Javascript jquery html更新可在计算机上运行,但不能在智能手机上运行
我在我的网站上使用了以下类似的代码Javascript jquery html更新可在计算机上运行,但不能在智能手机上运行,javascript,android,jquery,html,mobile,Javascript,Android,Jquery,Html,Mobile,我在我的网站上使用了以下类似的代码 <span class="box"> <noscript> <a href="link.php"><img src="images/imagebox.png"></a> </noscript> </span> <script src="http://ajax.googleapis.com/ajax/
<span class="box">
<noscript>
<a href="link.php"><img src="images/imagebox.png"></a>
</noscript>
</span>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
$(document).ready(function() {
$('span.box').html('<img src="images/imagebox.png">');
$(document).on('click','span.box', function(){
// rest of code
});
});
$(文档).ready(函数(){
$('span.box').html(“”);
$(文档).on('click','span.box',function(){
//代码的其余部分
});
});
如您所见,我构建它的方式是,如果客户端有javascript,则的内容将替换为无链接,这样对客户端来说更具交互性,如果客户端没有javascript,则他仍然可以使用链接进行必要的操作
虽然这在电脑上、在智能手机上(至少在我的手机上)都能正常工作,但它不工作,但我不知道为什么。。。事实上,在我的智能手机上,我看不到,也做不到任何动作,就好像它没有javascript,而它有。。。我的智能手机上有安卓2.1
你知道这方面有什么解决方案或解决办法吗?我可以用什么方法来实现这一点,甚至在智能手机上也能实现必要的行动能力
提前感谢您的帮助
编辑:我最终选择了一个解决方案,如尝试使用
$(document).on('pageinit',function(){})
或$(document).on('mobileinit',function(){})代码>而不是
$(document).ready(function(){})代码>所有移动设备都不会处理点击事件。。应该是:
$('<img />').attr('src', 'images/imagebox.png').appendTo('span.box').bind('click touchstart', function() {
// handle click / touch
});
$('
另请参阅这篇文章,了解一些触控设备的双重调试问题:
不,不要再在智能手机上或计算机上工作…:/与以前一样,既不在计算机上也不在智能手机上工作,即使使用jquery mobile…:问题不是单击而是插入图像…我尝试了touchstart,但没有任何效果,因为问题出现在单击事件之前…编辑了我的评论…在您的示例中,您没有img标记中没有结尾斜杠..所以它不是有效的xhtml。我正在使用html5,所以它是有效的…它通过了W3C验证程序…但是如前所述,需要插入图像才能处理单击,在您的示例中,您假设图像已经可见,而它不可见,这就是问题所在..编辑了答案..现在它添加了图像并将事件绑定到如果代码仍然不适合您的需要,请使用您的大脑来更改代码。