Tag: JavaScript

我可以在移动Safari浏览器中更改视口元标记吗?

我有一个为移动Safaribuild立的ajax应用程序,需要显示不同types的内容。 我需要用户可扩展= 1的其他内容我需要用户可扩展= 0的一些内容。 有没有办法更新这个dynamic而不刷新页面? <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />

iOS Objective C – UIWebView自动填充和执行

我想知道是否有任何可能的方式,我可以有一个webview,自动input文本框的值在网站上,并提交,使用户可以绕过search(特别是searchforms)完全? 所以用户只显示结果? 一个例子是: http : //www.eatwellguide.org/mobile/我注意到看它使用JavaScript的来源。 有反正我可以自动填写这些,并按下提交,用户甚至没有看到这个页面。 那么,网页加载到结果页面? 提前致谢! 回答如下: 有什么具体的地方,我必须把这个代码? 我把它加载到我上面列出的网站,然后在[超viewDidLoad]的webView的加载请求后,我把你列出的代码与第一个值和第二个值,nameofOneInput是'SearchKeyword', “SearchSubmit”是第二个,然后表单ID为“frmsAS”? 它仍然没有工作。 我究竟做错了什么? 我实际上试过它执行时按下一个button,仍然没有工作

使用JavaScript将UI注入到UIWebView中

我正在尝试注入本地CSS文件来覆盖网页的样式。 该网页在iOS中的UIWebView容器中呈现。 但是我无法让我的代码工作。 请参阅下面我的代理方法的代码片段。 这段代码运行(我可以看到NSLog消息),但我看不到在页面上执行的结果。 我知道它不能是我写的CSS,因为在这种情况下,我把页面自己的CSS文件,只是改变了一些颜色。 (为了testing这个方法) -(void)webViewDidFinishLoad:(UIWebView *)webView { NSString *path = [[NSBundle mainBundle] bundlePath]; NSString *cssPath = [path stringByAppendingPathComponent:@"reader.css"]; NSString *js = [NSString stringWithFormat:@"var headID = document.getElementsByTagName('head')[0];var cssNode = document.createElement('link');cssNode.type = 'text/css';cssNode.rel = 'stylesheet';cssNode.href = '%@';cssNode.media = 'screen';headID.appendChild(cssNode);", cssPath]; [webView stringByEvaluatingJavaScriptFromString:js]; NSLog(@"webViewDidFinishLoad Executed"); }

在IOS9的Cordova应用上使用jQuery / Javascript的window.history问题

IOS9(testing版)下的Cordova应用程序遇到问题。 我正在使用最新的Cordova和JQuery移动版本。 window.history没有得到更新,这是导致以下故障: window.history.go(-1)无法返回页面 即使您浏览了三页深度,window.history.length仍为1 在jQuery中标记为data-rel =“back”的链接在按下时无法返回 我已经把下面的示例代码放在一起,这个示例代码在IOS9(beta)下作为单独的Cordova应用程序运行时失败,但是如果从IOS9(testing版)浏览器(下面的链接)运行它,则工作正常。 事实上,它从移动浏览器运行,而不是作为一个应用程序导致我相信这可能是一个cordova问题。 在样本中 – 有三页。 从主页 – >选项 – > HopOpts导航,然后点击取消button应该带我们回页面,但不在cordova应用程序。 我已经单独尝试将一个button处理程序附加到该button,并确认window.history深度为1(应为3),并且window.history.go(-1)无法移回。 示例HTML文件在这里: http : //home.jejaju.com/BeerSmith2.html 要在Cordova下运行它作为应用程序,您需要删除顶部附近的“Cordova.js”行附近的注释块。 正如我上面指出的那样,它可以在浏览器中正常工作,即使在IOS9浏览器中,取消button也不会作为独立的cordova应用程序出现。 所以问题是没有人有线索为什么window.history不更新和反向链接不能正常工作这个简单的cordova应用程序和IOS9(testing版)? 在两个testing案例中唯一改变的是Cordova.js。

如何使用JavaScript在iOS上捕捉隐藏键盘事件

当iPad虚拟键盘上的隐藏键盘button被按下时,我需要做一些网页内容的大小调整。 有人知道当键盘隐藏时哪个JavaScript事件被启动?

iOS上的JavaScript:打开HTMLselect元素

我不希望,但我会问,以防万一。 我希望能够使用JavaScript在iPhone / iPad的移动版Safari中打开select元素。 广泛的谷歌/堆栈溢出search显示,很多人希望能够在浏览器中做到这一点,但不支持(为什么不,我想知道?)。 已经提出了各种黑客技巧,从select元素调用focus() ,改变size属性来使更多的option元素可见,或者用<div>和<ul>元素构造一个完全模拟的select元素。 但是,我会喜欢在iPad和iPhone中使用本地浏览器select控件。 我想知道,也许有人可能知道专有的Apple WebKit方法来做到这一点。 这将是这样的: var myselect = document.getElementsByTagName("select")[0]; myselect.open(); // this method doesn't exist 作为一个奖励,知道一个布尔属性也是很方便的,它说明select元素当前是否处于打开/活动状态(即不仅仅是元素是否有焦点)。 我知道我可以通过跟踪点击和更改事件来解决这个问题,但是一个简单的属性会很有用。 妄想? 更新: 我还没有答案,但是我发现,模拟成功的mousedown在Google Chrome中打开了select元素,但不是iPad或Firefox等等: function simulateMouseEvent(eventName, element) { var evt = document.createEvent("MouseEvents"); evt.initMouseEvent(eventName, true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null); element.dispatchEvent(evt); } simulateMouseEvent("mousedown", select); 更新: […]

我怎样才能检查浏览器上的真正的触摸支持

今天(或最近)Chrome Beta版本已经更新到了17版本,并且在我的网页应用程序中我注意到了一些funkiness。 我注意到这是因为一个类被添加到body元素,通常只有在有触摸事件支持的情况下才会被放到那里,我这样检查: try { document.createEvent("TouchEvent"); _device.touch = true; } catch (e) { _device.touch = false; } 当然,我可以在Chrome 17上创build和触发触摸事件。首先,我的想法是,我可以检查触摸,看看鼠标单击失败,因此,有一个鼠标,但MouseEvents也触发。 如果没有用户代理嗅探,我还能如何检查它是一个真实的,可触摸的设备,而不仅仅是支持触摸事件的浏览器。

iOS Phonegap媒体对象 – 如何访问WWW文件夹中的资源?

我正在开发一个phonegap的应用程序,我有一个声音文件,我想要播放这样的path如www / Sounds / sound.mp3,我试图访问这个文件使用Phonegap的媒体对象按顺序玩它。 我无法弄清楚在使用Media对象的JavaScript文件中访问这个声音文件的path吗? 我尝试过的path如file:///www/Sounds/sound.mp3,相对path等,我无法访问它。 我不断收到在xcode 4中的以下错误 Will attempt to use file resource 'file:///www/Sounds/sound.mp3' Unknown resource 'file:///www/Sounds/sound.mp3' 我需要使用什么path来访问文件? 或者,我是否需要将声音文件从我的www目录中复制到我的资源文件夹中并在那里访问? 我的WWW文件夹被引用,不知道这是否有所作为。

Cordova / Phonegap 3.1键盘(仍然)覆盖重点forms领域 – iOS 7

嗨,大家好,我刚刚从cordova3.0升级到3.1,我仍然遇到一个非常令人不安的问题(在使用KeyboardShrinksView首选项时仍然存在)。 每当我聚焦触发键盘打开的元素(input / textarea)时,元素就会隐藏在键盘后面,我需要向下滚动(使用webkit-overflow-scrolling进行滚动),以便查看元素及其内容。 当KeyboardShrinksView设置为true时,页面将不会滚动,甚至更糟糕。 任何解决scheme,以解决这个问题? 我已经看到了一些问题和错误报告,但没有工作的解决scheme(或解决scheme)。 玩“全屏”的偏好不会解决问题。 谢谢你的帮助

在iPad上播放HTML5video并寻找

非常奇怪的错误,我似乎无法弄清楚。 我试图让用户点击播放时从某个位置播放HTML5video。 当video开始播放时,我试图让它find正确的。 在我的玩事件我做this.currentTime = X 在浏览器上,它工作正常。 但是在iPad上,当我播放video时,video并没有find正确的位置(从零开始)。 更奇怪的是,如果我在setTimeout中做this.currentTime = X调用,比如说1秒,它就可以在IPad上工作(有时候)。