Articles of JavaScript

我可以阻止手机在网页上睡觉吗?

在应用程序中,我可以使用http://developer.android.com/reference/android/os/PowerManager.WakeLock.html但是有没有办法让网页运行并防止入睡? 如果它至少在android上运行会很好。

Android浏览器可以快速连续两次点击事件

我正在尝试使用JavaScript和jQuery捕获触摸事件。 但是我在Android 2.3.2的Web浏览器中看到了一些非常奇怪的行为:每当我点击屏幕,然后快速点击屏幕上的其他位置时,浏览器: 暂时显示橙色边框并突出显示整个屏幕, 和 发给我错误的事件。 橙色边框似乎只是同一个潜在问题的相关症状,所以我并不太担心它 – 它实际上很方便能够告诉浏览器何时搞砸了。 我真正想知道的是, 我怎样能够持续获得两次快速点击的正确触摸事件? 我相信,当问题得到解决时,橙色边框也会消失。 以下是我迄今为止所制定的所有痛苦细节。 这是一个显示问题的页面,并显示有关收到的每个事件的详细信息和时间的大量诊断信息。 如果你点击蓝色矩形,你肯定会得到橙色闪光/坏事件,然后快速点击黑色矩形。 我的jQuery代码非常标准。 logfunction的实现并不重要; 问题是浏览器在应该的时候没有调用它。 el = $(‘#battle’); el.on(‘touchstart’, function(event) { log(event); return event.preventDefault(); }); el.on(‘touchend’, function(event) { return log(event); }); el.on(‘touchcancel’, function(event) { return log(event); }); el.mousedown(function(event) { log(event); return event.preventDefault(); }); return el.mouseup(function(event) { return log(event); }); 关于我最初描述的现象的更多细节: 橙色边框和突出显示:这是相同的橙色边框,并突出显示浏览器在单击时绘制超链接。 但是页面上没有超链接,浏览器在整个屏幕周围绘制橙色边框 […]

来自Web的Firebase Cloud HTTP消息

我已经设置了一个网页(home.html),用户可以使用身份validation登录firebase。 一旦进行身份validation,就会将其定向到新页面(test.html)。 一旦他们在这里,我希望能够发送通知或数据消息。 我想知道是否有人可以帮助我发送通知的代码 – 任何types的通知。 我已经在这3天了,不能从网上发送通知! 我找不到任何关于此的教程 – 只有使用卷发的人。 我不知道如何处理下面的代码,这应该是关于如何向订阅主题的设备发送通知。 我猜这是所有JSON,需要放入JSON对象? 请假设初始化已填写,我删除了所有信息 – 即使我认为该信息应该是公开的。 感谢您的任何信息! 这是我的服务工作者(到目前为止):firebase-messaging.sw.js // Give the service worker access to Firebase Messaging. // Note that you can only use Firebase Messaging here, other Firebase libraries // are not available in the service worker. importScripts(‘https://www.gstatic.com/firebasejs/4.3.1/firebase-app.js’); importScripts(‘https://www.gstatic.com/firebasejs/4.3.1/firebase-messaging.js’); // Initialize Firebase var config = […]

Parse.com中的JavaScript子类化

在Android中,我使用两个不在Parse类中的局部variables将ParseObject子类化。 我只需要在本地设置这些variables,而无需将它们保存在服务器上。 它们是String的名为helper1 , helper2 getter和setter。 它在Android上运行良好 – 我可以使用setHelper1(“whatever”); 以及我的ParseObject上的getHelper()方法。 我想要做的是在JavaScript中执行相同的操作,因为我想在ParseCloud进行相同的操作,并使其返回带有其他Strings结果而不在数据库类中创建其他列。 我阅读了https://parse.com/docs/js/guide#objects-parse-object和https://parse.com/docs/js/guide#queries-basic-queries,但它没有太大帮助,我可以得到它。 如何实现? 编辑: q1.find({ success: function(results){ for (var x in results){ x.helper1 = ‘foo’; } response.success(results); }, error: function(error){ } });

用于移除移动Web应用程序中的地址栏的跨平台方法

我正在开发一个移动网络应用程序,我正在尝试删除地址栏。 它很容易,除非的自然高度不够高,不允许滚动。 尝试我可能找不到可靠的iphone / android,交叉设备方法确保足够高以允许地址栏消失。 我见过的许多方法都依赖于screen.height ,这使得页面比它需要的更加严格。 它应该非常高,足以让地址栏消失,不会更高! 有没有人有一个完美处理这个的脚本? 我需要确定页面的高度减去iphone和android的地址栏。 我试过了: screen.height //too tall window.innerHeight //too short document.documentElement.clientHeight //too short document.body.clientHeight //almost but too short 允许JQUERY。

如何将JSON格式的数据从WebView传递到HTML页面

我试图将JSON格式的数据从我的Android WebView传递到HTML页面。 但是,每当我尝试解析原始JSON数据时应用程序崩溃,我希望格式为{“key”:”data”} 我的应用程序的目标是解释此JSON数据,将其形成一个值数组,并将其发送到HTML页面。 这是正确的方法吗? 这是我的WebView代码…… public class MyWebView extends Activity { WebView mWebView; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.web_view); mWebView = (WebView) findViewById(R.id.webviewSch); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.addJavascriptInterface(this, “webConnector”); mWebView.loadUrl(“file:///android_asset/table.html”); } public String load() { return “{\”key\”:\”data\”}”; } } 这是HTML代码…… Test function loader() { var jsonData = window.webConnector.load(); } Do nothing 这是日志猫: 04-15 00:35:44.551: W/dalvikvm(442): JNI […]

无法让本机Android视图显示在React Native中

我正在尝试将一个简单的TextView从Android的本机代码显示到我的Javascript视图中。 但是,应用程序无声地失败,我只看到默认的“Hello World” RCTScannerViewManager.java public class RCTScannerViewManager extends SimpleViewManager { public static final String REACT_CLASS = “RCTScannerView”; @Override public String getName() { return REACT_CLASS; } @Override protected TextView createViewInstance(ThemedReactContext reactContext) { TextView tv = new TextView(reactContext); tv.setText(“hello from android !”); return tv; } } RCTScannerViewPackage.java public class RCTScannerViewPackage implements ReactPackage { @Override public List createNativeModules(ReactApplicationContext […]

从硬件GPS获取坐标

我发现了很多关于GPS坐标的问题,但没有一个确认使用移动硬件GPS代替网络GPS如geoLocation等。 我的实际方法: 我正在使用navigator.geolocation.getCurrentPosition() , Lat/Long来自Web,这里是代码: function getGPS(funcCallBack) { if (navigator.geolocation) { var timeoutVal = getCookie(“GPSTimeout”); navigator.geolocation.getCurrentPosition(sucess ,error ,{enableHighAccuracy: true ,timeout: timeoutVal ,maximumAge: 0} ); } else{ alert(‘GPS is turned off, or was not possible to find it. Now, doing the login without localization.’); window.gpsLat = 0; window.gpsLng = 0; window.gpsAcc = 0; funcCallBack(); } function […]

对于loadUrl上的javascript getElementById,Android WebView始终返回null

我尝试从android客户端应用程序填写webview中的表单。 我知道它应该如何工作,但getElementById总是为我返回null。 我在不同的网站上试过。 以下是www.google.com的示例。 MyWebView view = new MyWebView(this); view.getSettings().setJavaScriptEnabled(true); view.loadUrl(“http://www.google.com”); view.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView v, String url) { v.loadUrl(url); return true; } @Override public void onPageFinished(WebView v, String url) { v.loadUrl(“javascript:document.getElementById(‘mib’).value = ‘aaa’;”); } }); setContentView(view); 和MyWebView类(仅供参考)。 class MyWebView extends WebView { Context context; public MyWebView(Context context) { super(context); this.context = […]

使用外部Java插件在PhoneGap / Cordova中进行音频/video捕获

我正在使用PhoneGap / cordova和Javascript开发一个Android应用程序。 我想在我的应用程序的特定html Div中使用外部Java插件包含音频/video捕获function。 或者某些我可以拥有基于Java的本机小部件的机制,它将在特定位置的同一屏幕中出现(而不是完全替换当前视图并占据整个屏幕) 我在网上搜索过但找不到有效的方法。 任何人都可以建议我处理这个问题吗?