加载“;window.open”;命令仅在IOS设备上..
Loading "window.open" command on IOS devices only.....?
我第一次尝试构建一个可以容纳IOS的网站,但进展并不顺利。
在页面上嵌入flickr幻灯片作为对象。在普通浏览器上运行良好,在iPad上运行不太好(显然,因为它是flash。)-除了背景图像,什么都不加载。
有一个不错的解决方法,就是将单元格本身作为一个链接,用flickr页面本身打开一个新的浏览器窗口。在iPad上非常完美。但在普通浏览器上,点击flickr对象会产生两种操作——幻灯片和带有flickr页面的新窗口。
我需要的是以这样一种方式编写它,只有IOS才会看到以下指令:
onclick="window.open('http://www.flickr.com//photos/72076640@N04/sets/72157628873638463/show/');"
这是有问题的页面:
http://creyoncafe.com/pages/galeria2.html
有人能帮忙吗?
(希望我说得清楚。如果我说得太久,我很抱歉……我遵循法令,尽可能具体。)
谢谢
向页面添加类似的javascript函数
<script type="text/javascript">
function showFlickr () {
var userAgent = navigator.userAgent;
if (userAgent.indexOf('iPhone') != -1 ||
userAgent.indexOf('iPod') != -1 ||
userAgent.indexOf('iPad') != -1) {
window.open('http://www.flickr.com//photos/72076640@N04/sets/72157628873638463/show/');
return false;
}
return true;
}
</script>
然后在你的onclick上说
onclick="return showFlickr()"
这绝不是最优雅的解决方案,但它应该有效。
更好的方法是找到一个脚本来检测浏览器上是否启用了Flash,并用它来决定显示哪种类型的图库。有很多非iOS设备也不能显示Flash,比如没有Flash或安装了Flash阻止程序的台式机,或者其他品牌的智能手机,比如旧的Android设备、Windows Phone、黑莓等。使用用户代理永远无法处理每一台设备,但检测Flash应该对每个人都有效。
将onclick
处理程序设置为
onclick="if (!/(iPhone|iPad).*Safari/.test(navigator.userAgent)) return true; window.open('http://www.flickr.com//photos/72076640@N04/sets/72157628873638463/show/'); return false;"
相关文章:
- 如何确定javascript已经完成了某些操作.ios上的
- 当我点击jsf中的primefaces命令按钮时,如何获得点击事件
- 压缩phonegap中ios的图像插件
- 如何使用Socket.io将命令从客户端发送到服务器
- 通过命令行/批处理文件打开页面时,将javascript代码注入Google Chrome
- React Native通过Navigator将用户输入数据传递到选项卡栏IOS中的组件
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 是否可以使用iframe API在iOS浏览器上播放youtube视频
- 命令行中的Uglify js;不要弄乱变量名
- iOS 中的按钮触摸状态
- 在iOS 4.3中未调用UIWebView shouldStartLoadWithRequest
- http.listen()在运行时接受终端命令
- 在iOS和Android上使用React native时,我还能使用本机第三方lirbraries吗
- 谷歌地图根本不适用于Meteor-iOS
- Facebook登录不适用于iOS的应用内浏览器
- 如何在没有单词的情况下从命令行运行Node.js程序'节点'
- 如何将给定的curl命令复制为jquery ajax请求
- 绕z轴旋转时出现iOS陀螺仪错误
- Ponegap命令行不是为ios构建的
- 加载“;window.open”;命令仅在IOS设备上..