![](/img/trans.png)
[英]Javascript quotes reel not working on mobile (Chrome, Safari…)
[英]JavaScript not working in Mobile Safari
好的,所以问题是我正在使用的 JS 代码将无法立即在移动 Safari 中运行。 在桌面 safari、chrome 等中一切正常。
在移动 safari(iphone 4 和 ipod touch 2nd gen 测试)中,页面完全空白。 但是,如果您导航到另一个页面然后单击返回,则加载正常!
有人能告诉我这里到底发生了什么吗?
谢谢:)
这是该网站的链接
http://osmithcouk.ipage.com/exposed/index.php
这是JS代码
注意我已经编辑了代码,因为 RYUUTATSUO 建议我这样做但仍然无法正常工作:(
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".slidingDiv").hide();
$(".show_hide").show();
$('.show_hide').click(function(){
$(".slidingDiv").slideToggle();
});
});
这是与之相伴的 HTML。
<a href="#" class="show_hide"><b><?php include 'headline1.txt'; ?></b></a>
<div class="slidingDiv">
<?php include 'story1.txt'; ?> <a href="#" class="show_hide">Hide story...</a></div>
以及用于slidingDiv 和show_hide 的CSS。
.slidingDiv {
background-color: #FFFFFF;
padding:20px;
margin-top:10px;
}
.show_hide {
display:none;
}
非常感谢您的帮助:)
实际上,问题在于您必须添加查询字符串参数才能使其在移动设备上呈现。 例如
script src="js/Common.js" type="text/javascript"
应该替换为
script src="js/Common.js?v=1.1" type="text/javascript"
并且您还可以在您的 js 文件的注释中提供版本,以便客户可以知道他有最新版本的 JS 文件。
利用
jQuery(window).load()
代替
jQuery(document).ready()
我真的不知道这是否是正确的协议,但我自己修复了它,所以我想我会发布我的答案!
真的很简单,我只是把JS移到了.CSS下面。 显然 Safari 在 CSS 之前渲染 jQuery 时出现问题:s
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.