JavaScript点击事件在Android 4.0.4默认浏览器上的三星Galaxy SIII上不起作用

JavaScript点击事件在Android 4.0.4默认浏览器上的三星Galaxy SIII上不起作用,javascript,android,jquery,android-4.0-ice-cream-sandwich,Javascript,Android,Jquery,Android 4.0 Ice Cream Sandwich,Android 4.0.4上三星Galaxy SIII的默认浏览器有一个最奇怪的问题: 在下面的页面中,单击链接不会触发JavaScript处理程序。从其中一个div的内容中删除一个“a”字母会使它们再次工作 以下是JS控制台的屏幕截图: 我打开了一个,如果你有同样的问题,请明星它,谢谢 提前感谢您的帮助 <html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jqu

Android 4.0.4上三星Galaxy SIII的默认浏览器有一个最奇怪的问题:

在下面的页面中,单击链接不会触发JavaScript处理程序。从其中一个div的内容中删除一个“a”字母会使它们再次工作

以下是JS控制台的屏幕截图:

我打开了一个,如果你有同样的问题,请明星它,谢谢

提前感谢您的帮助

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        alert('attaching click handlers');
        $("#red").click(function(e) {
            alert('red clicked');
            $("body").css("background-color", "#CC0000");
        });
        $("#green").click(function(e) {
            alert('green clicked');
            $("body").css("background-color", "#00CC00");
        });
        $("#blue").click(function(e) {
            alert('blue clicked');
            $("body").css("background-color", "#0000CC");
        });
    });
</script>
</head>
<body>
    <div>
        <p>
            <a id="red" href="#">CHANGE TO RED</a>
        </p>
        <p>
            <a id="green" href="#">CHANGE TO GREEN</a>
        </p>
        <p>
            <a id="blue" href="#">CHANGE TO BLUE</a>
        </p>
    </div>
    <p>Removing one of the a's in the content below will make the JS
        click events work (i.e. trigger background color change), and
        so will changing the 'page' class or id into something else</p>
    <div class="page" id="page">
        <div>aaaaaaaaaaaaaaaaaaa</div>
        <ul>
            <li>
                <div>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</div>
            </li>
        </ul>
    </div>
</body>
</html>

$(文档).ready(函数(){
警报(“附加点击处理程序”);
$(“#红色”)。单击(功能(e){
警报(“红色点击”);
$(“body”).css(“背景色”,“#CC0000”);
});
$(“#绿色”)。单击(功能(e){
警报(“绿色单击”);
$(“body”).css(“背景色”,“00CC00”);
});
$(“#蓝色”)。单击(功能(e){
警报(“蓝色点击”);
$(“body”).css(“背景色”,“#0000CC”);
});
});

删除下面内容中的一个a将使JS 单击事件工作(即触发背景颜色更改),然后 因此,将“page”类或id更改为其他内容也是如此

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
  • aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

实际上至少有一个简单的解决方案:将DIV的id更改为不包含“page”子字符串


这与其说是一个解决方案,不如说是一个变通办法,但如果浏览器的定制有问题,还能做些什么呢?

我刚刚在三星Galaxy上遇到了类似的问题。找到了这条线。更改自:

span id="page" 
致:


修好了

类似的方法也会奏效:

<a href='http://www.google.de' ontouchstart='window.location = this.href'>foo</a>"

Try$(element).on('blur',function(){});@Pilatus我尝试了$(“#blue”).blur(function(e){…但它不起作用,你用我的示例文件试过了吗?这在Galaxy Nexus Android 4.0.4默认浏览器上运行得很好。你试过在Galaxy SIII浏览器抛出任何错误时查看控制台吗?@TorstenWalter当我点击我得到的链接时:
Uncaught TypeError:Cannot convert null to object
实际上我在第l页得到了错误oad…你能解释一下这有什么关系吗?@epeleg我希望我能,我只是在试图理解为什么它发生在某些页面而不是其他页面时找到了这个解决方法。你有这个问题吗?可能有,但有点难理解:(你对此有任何解释吗?这些是我无法控制的设备上发生的错误。但我公然将“页面”作为我应用程序中某些div id的子字符串。我有一些类名包含“页面”字。我已经重命名并修复了它们。有点像wierd,但可以工作。
<a href='http://www.google.de' ontouchstart='window.location = this.href'>foo</a>"