Tag: JavaScript

防止iOS Webkit长按链接

在我正在开发的iOS应用程序中,我展示了一个UIWebView以允许用户升级其帐户。 该页面包含显示用户其他信息的链接,但是您将手指放在链接上,会popup如下菜单: 正如你所看到的,它揭示了页面的URL和将要执行的操作,我不希望用户看到,因为我不希望他们能够复制任何东西,因为我禁用了“复制/剪切/粘贴“菜单。 我怎么去禁用这个菜单呢? 感谢任何指针。

在UIWebView中检测单击,但仍支持文本select和链接

我正在使用JavaScript来检测我在UIWebView中显示的页面中的水龙头,如下所示: <div id="wrapper"> <a href="http://apple.com">Apple</a> </div> <script> document.getElementById("wrapper").addEventListener('click', function() { document.location = 'internal://tap'; }, false); </script> 我拦截与我的networking查看代理的链接,并寻找“内部://点击”。 当我得到这个,我阻止networking视图导航,并响应水龙头。 但是,这样做,我失去了select文本的能力。 点击链接仍然正常工作。 事实上,只要添加一个“点击”事件监听器,即使处理程序不尝试更改文档位置,也会删除select文本的function。 任何想法我做错了什么?

检查与cordovaPhonegap 3.3.0 iOS应用程序无法正常工作的互联网连接

我已经尝试按照Cordova docs上的这个指南,但它似乎不工作。 这是我的代码: 我已将<plugin name="NetworkStatus" value="CDVConnection" />到config.xml 。 和这个脚本到我的index.html : <script type="text/javascript"> document.addEventListener("deviceready", onDeviceReady, false); // device APIs are available // function onDeviceReady() { alert("1"); // runs this alert checkConnection(); } function checkConnection() { var networkState = Connection.CELL; alert("2"); // doesn't run this var states = {}; states[Connection.UNKNOWN] = 'Unknown connection'; states[Connection.ETHERNET] = 'Ethernet connection'; […]

iOS浏览器 – 使用JavaScript更改CSS或内容时,iFrame跳转到顶部

这个问题似乎一直存在下去。 在某些特定的情况下,iOS浏览器会出现这个令人沮丧的错误。 问题: 如果您有一个包含iFrame的网页,并且您正在以编程方式修改iFrames内容文档,则iFrame将跳转到页面的顶部。 但是,只有在DOM操作之前的页面超过某个高度时,才会发生这种情况,通常情况下,这个长度大于视口长度的两倍。 无论您是修改DOM结构还是更改样式属性,都会出现此问题。 这个错误只在iOS上出现,包括截至目前的最新版本(9.2)

检查touchend是否在拖动之后

我有一些代码,它改变了表的类。 在手机上,有时桌子太宽了,用户会拖动/滚动查看内容。 但是,当他们触摸并拖动表格时,会触发每次拖动的触发。 我如何testing,看是否触摸拖动的结果? 我尝试跟踪dragstart和dragend,但我无法得到这个工作,这似乎是一个不雅的方法。 有什么我可以添加到下面,基本上确定,“这个touchend到达拖动结束? $("#resultTable").on("touchend","#resultTable td",function(){ $(this).toggleClass('stay'); }); 在此先感谢您的帮助。 PS – 使用最新的jQuery,虽然经常点击的作品,但与touchend相比非常缓慢。

如何在iPhone上的Phonegap中运行后台JavaScript – 用于定时器/秒表?

我的秒表脚本完美地运行在Android的背景(计时),但iOS 4.3.2似乎暂停脚本。 在iOS上,秒表在应用程序发送到后台时停止。 我需要一个运行秒表(时间显示在视图中每秒更新)和一些警报消息在规定的时间点。 秒表的代码如下: this.timer = window.setInterval(function(){ instance.runtime += Stopwatch.INCREMENT; instance.doDisplay(); }, Stopwatch.INCREMENT); 我知道原生解决scheme,但为了实现跨平台兼容性,我想坚持使用JavaScript解决scheme。

hover的CSSdynamic导航 – 如何让它在iOS Safari中工作?

在我的网站中,我只使用了CSS的dynamic菜单。 这在桌面浏览器中很好,但在iOS(iphone,ipad等)上却不行,因为触摸界面不支持:hoverselect器。 我的问题是:在iOS上支持这个最好的方法是什么? (理想情况下,通过修补一些CSS,或使现有的代码工作,而不是整个事情只是为了支持iOS的Javascript) 我的html看起来像这样 <ul id="nav"> <li> Item 1 <ul> <li><a href=''>sub nav 1.1</a></li> <li><a href=''>sub nav 1.2</a></li> </ul> </li> <li> Item 2 <ul> <li><a href=''>sub nav 2.1</a></li> <li><a href=''>sub nav 2.2</a></li> </ul> </li> <li> Item 3 <ul> <li><a href=''>sub nav 3.1</a></li> <li><a href=''>sub nav 3.2</a></li> </ul> </li> </ul> ​​​​​ 而CSS就是这样 #nav li { […]

iOS 10 Safari:防止在固定覆盖后面滚动并保持滚动位置

我无法防止主体内容滚动,而固定的位置覆盖显示。 类似的问题已经被多次提出,但是以前的所有技术似乎都不适用于iOS 10中的Safari。这似乎是最近的一个问题。 一些说明: 我可以禁用滚动,如果我设置html和body overflow: hidden ,但是,这使得身体内容滚动到顶部。 如果叠加层中的内容足够长以便可以滚动,则主页内容的滚动function将被正确禁用。 如果叠加中的内容不足以导致滚动,则可以滚动主页面内容。 我join了一个来自http://blog.christoffer.me/six-things-i-learnt-about-ios-safaris-rubber-band-scrolling/的javascript函数,当覆盖图显示时禁用touchmove 。 这工作以前,但不再有效。 这里是完整的HTML源代码。 您可以在http://www.pixeldigital.com/test/ios_scroll.html进行testing。 <!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script> <style type="text/css"> html, body { width: 100%; height: 100%; margin: 0; padding: 0; } body { font-family: arial; } #overlay { display: none; position: fixed; z-index: 9999; left: […]

如何在UIWebView中获取元素的位置?

我在我的iPad程序中加载了HTML的UIWebView。 通过使用-webkit-column-width,我将html分成了几列。 padding: 0px height: 1024px -webkit-column-gap: 0px -webkit-column-width: 768px 我怎样才能得到在webview元素的位置(x,y)? 该位置是在屏幕上的位置,而不是在HTML。 所以y的范围从0到webview的高度。 提前致谢。

iOS:在UIWebview中使用javascript调用obj-c方法

我正在写一个与JS网页协作的function。 我使用UIWebView来包含网页,然后当我想要网页与我的应用程序进行通信时,情况变得复杂。 在UIWebView中调用JavaScript函数很简单,方法是使用– stringByEvaluatingJavaScriptFromString:方法 但有没有更简单的方法来调用网页中的obj-c函数,使用JavaScript? 我尝试使用UIWebView委托方法,但我认为这太hacky。 有什么build议?