Articles of JavaScript

如何从Android移动浏览器使用Java脚本从移动浏览器中运行的Web应用程序源获取序列号

我可以从Android Mobile Native Application中findUniqueId,Serial,IMEI,OS和IP地址。 但是,我无法通过移动浏览器应用程序find上述设备信息,该应用程序将来自在移动浏览器中运行的networking应用程序源。 注意:我有很多的链接,对此,他们build议只能使用UserAgent从手机浏览器获取设备的操作系统types。 请任何人都帮我摆脱这一点。 感谢提前

反应原生的Android Webvideo

我正在使用React Native创build一个Android / iOS应用程序,并尝试让video在WebView组件中播放。 video在iOS上播放很好,但我无法在Android WebView中播放。 我遇到过这样的几个线程( 在Android WebView中启用HTML5video播放? ),声称这是一个相当普遍的问题在Android上,可以通过导入WebChromeClient并在webview上设置该选项来解决,如下所示: mainWebView.setWebChromeClient(new WebChromeClient()); 但几乎所有这些线程都严格构build原生Android应用程序,而不是使用React Native。 有谁知道如何让这个工作在React Native?

如何获取Android-Phonegap-app中的浏览器控制台错误,可能在Eclipse中?

PhoneGap应用程序在Android中运行。 我需要看到浏览器日志(不只是console.log()),以便我可以看到所有的错误和可能的警告。 我知道这个类似的问题 ,但是,这并没有解决我的问题,因为它只处理console.log()。 我的应用程序崩溃在Android 1.6浏览器,我需要明白为什么。 有可能是一些语法细节,所有新的Android浏览器不介意,但1.6可能抱怨的东西,我需要看看。 我使用Eclipse,所以如果有可能使用它来查看浏览器错误控制台,这将是很好的。 我也知道Eclipse中的LogCat工具,但它根本不显示任何来自PhoneGap内部浏览器的输出。 请帮忙,我迷路了;-)

如何使用Javascriptfind虚拟视口/屏幕宽度?

是否有一致的方式来确定使用Javascript的移动设备的屏幕和虚拟视口的宽度? 我的目标平台是移动Safari和Android的股票浏览器,但我也在Android上testing其他浏览器。 我试着用screen.width , window.innerWidth , document.getElementByTagName("body")[0].clientWidth和jQuery的$(window).width() 。 移动Safari(从ios 3.1.3(7E18),原始的iPod touch)显示有用的价值,但股票Android浏览器(Android 2.3.7)没有。 理想情况下,我认为screen.width应该显示屏幕的实际像素分辨率:iPod Touch上的320px,Samsung Galaxy S2上的480px。 基于我一直在阅读的内容,其他数字之一应该显示布局视口的宽度,在iTouch上应该是980像素,在三星Galaxy S2上应该是800像素。 。 。 码 <body> <h1>screen.width: <span id="screen_width"></span></h1> <h1>window.innerwidth: <span id="window_innerwidth"></span></h1> <h1>clientWidth: <span id="clientwidth"></span></h1> <h1>jQuery width: <span id="jquery_width"></span></h1> </body> <script type="text/javascript" src="jquery/jquery-1.7.1.min.js"></script> <script type="text/javascript"> window.onload = function(){ var swidth = screen.width; var wiwidth = window.innerWidth; var cwidth = […]

使用Phonegap的File API修改应用资产

我使用html5一个月的phonegap应用程序工作。 我使用File API处理离线的JSON文件。 看来我存储的JSON文件会自动保存在/mnt/sdcard/ 。 问题是,我发现自己处理每个文件我想要的3个文件。 第一个与我的应用程序打包的文件(js / products.js) 2发送给我的更新的远程文件(http://website/remote_products.js) 第三个SD卡上的本地文件我用远程数据更新。 ( /mnt/sdcard/updated-products.js ) 是否有可能 – 而不是保存在SD卡 – 使用File API更新我的应用程序的资产? 或者在我的应用资产文件夹中创build一个新文件? (JSON文件与我的应用程序打包在js/products.jsfind) 如果是的话,怎么样? 谢谢

JavaScript停用在非活动的android Chrome选项卡中

我有一个小型网页,可以在手机上播放我可以听的音乐。 页面上的JavaScript设置超时,加载下一首歌曲,并在第一首歌曲结束时播放。 当选项卡处于活动状态时,一切正常。 但是在标签变为非活动状态之后,超时会继续工作几分钟,然后一旦当前播放的歌曲结束,下一首歌曲就不会加载或播放。 我认为这是由于Chrome暂停了非活动标签的JavaScript执行,但我不希望在播放音乐的整个过程中保持屏幕不变。 我使用Chrome移动debugging器对代码进行了debugging,设置一个超时时间,每隔500ms显示当前的date。 一旦屏幕变黑,超时会下降到预期的每1000毫秒一次,但几分钟后,超时将完全停止。 但是一旦选项卡再次激活,所有暂停的超时将激活并运行。 Chrome会将setInterval / setTimeout更改为1000ms,并将其解决,但暂停执行会使整个页面停止工作。 我试图保持选项卡活跃每隔一段时间运行AJAX请求,但这些暂停以及。 我试过的东西没有让JavaScript运行。 基本上,有没有办法解决这个问题? 屏幕closures时,是否有办法保持选项卡激活?

反应本机ListView TextInput从性能优化呈现locking

我正在尝试为列表视图的每一行中包含的每个textinput设置一个状态值。 问题是,React Native的ListView组件有一些优化技术,例如删除超出屏幕界限的行。 这是一个问题,因为TextInputs正在locking它们的value属性,编辑它们将不再反映更改,并且状态值locking或什么。 我附上了一个video来展示这种行为。 _renderRow(value){ let tempWidth = window.width / 2.13 if(value.data.length == 1){ tempWidth = window.width*0.970 } var Images = value.data.map((b,i) => { let source = { uri: BUCKETIMAGES+'/'+b.image_filename} return ( <TouchableOpacity key={i} style={styles.cardImage}> {b.profile_picture && <View style={{zIndex: 4, width:31,height:31,borderWidth:1,borderColor:"#ccc",borderRadius:20, position: "absolute", right: -6, top: -6}}> <CacheableImage style={{width:30,height:30,borderWidth:3,borderColor:"white",borderRadius:15,position: "absolute", right: 0, top: 0}} […]

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

我想从我的Android WebView传递JSON格式的数据到一个HTML页面。 但是,每当我尝试parsing原始的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代码… <html> <head> <title>Test</title> <script type="text/javascript"> function loader() { var jsonData = window.webConnector.load(); } </script> </head> <body […]

捏放大,缩小 – 55228885 55228885视窗C#Office Java phpsearch首页> JavaScript的>在android平台上的Web的JavaScript / jquery /

什么是涉及捏放大或缩小的JavaScript或jQuery或jQuery的移动事件? 我试图捕捉这些事件放大和放大一个div内的图像,而不影响整个网站的布局。 最简单的方法来检测一个捏适用于iPad,但不是机器人。 什么是相同的方式来检测相同的android平台上的networking? 任何帮助表示赞赏。 编辑:我一直在尝试touchy.js ,这适用于放大和缩小图像,但如果图像的一部分不能通过手指轻扫或类似的东西放大到图像是没有用的 。 例如,请考虑以下代码: <div style=" border: 1px solid blue; width: 560px; overflow:scroll;"> <p>&nbsp;</p> <img id="image" src="images/tux.png" alt="my image" style=" border: 1em solid gray;" /> </div> 我需要图像停留在div内,用户应该可以在放大图像后移动图像。但是,使用此代码,我必须在空白区域(由段落标记创build)上滑动手指以便水平地去图像的不同部分。 垂直方向也是如此(您必须在网页的空白区域上滑动手指才能看到图像的长度)。 我想说的是, 在图像内部滑动运动没有任何效果,而用户在放大图像后会期望这样做。 没有一个例子就很难解释,我试图创buildhttp://jsfiddle.net/Debarupa/8peaf/,但它不工作,因为我不能编辑头元。 我需要补充: <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, minimum-scale=1" /> 使整个网页不可缩放。

Touchend touchmove后不开火

我试图为移动设备创build一个页面,检测scrollTop位置,如果scrollTop小于文档高度的一半,则滚动到页面的顶部,如果不滚动则滚动到底部。 我已经实现了这一点: var ScrollTimeout; $(window).on('scroll',function(){ clearTimeout(ScrollTimeout); ScrollTimeout = setTimeout(scrollToTopOrBottom,200); }); 问题是超时会在用户停止滚动时触发,但手指仍然在屏幕上。 然后,我和touchend事件一起工作,这很棒。 $(document).on('touchend',function(){ scrollToTop(); }); 用户可以停止滚动(手指仍然在屏幕上),然后继续滚动而不触发scrollToTopOrBottom()函数。 问题是,这个事件在浏览器之间是无效的: 在某些浏览器(Maxthon和Android)中, touchend事件按预期工作,但在Opera Mobile和Chrome中, touchend事件不会触发。 对此的解释是touchend不会触发,因为touchcancel已经被触发了 。 我已经试过了 $(document).on('touchmove',function(e){ e.preventDefault(); }); 并成功地避免了touchcancel的触发,但不幸的是也避免了滚动的自然行为。 有谁知道这是如何实现的? 我完全没有想法。 谢谢。