jquery - Safari 没有获取 jquery 点击功能

标签 jquery safari hyperlink click

我有:

<script>
jQuery(document).ready(function(){
    $("#mydiv").click(function(){

       $("#content").load("html/page.php");

    });
});

</script>

以及图像映射内部:

<div id="mydiv"><area shape="rect" coords="318,122,413,221" href="#"/></div>

之前该行的另一个版本:

<area shape="rect" coords="318,122,413,221" href="#" id="mydiv"/>

这些(图像映射线的两个版本)适用于我的所有浏览器,但 Safari (5.0.5) 除外。在 Safari 中我点击但没有任何反应。常规链接有效,因此图像映射没有任何问题。

我尝试删除 href 中的 #,然后它适用于 Safari,但不适用于其他浏览器。如果我删除整个 href="#"会发生什么,我会回到不在 Safari 中工作并为其余部分工作

有人知道如何让点击在所有浏览器中正常工作吗?

非常感谢

最佳答案

它不会解决您的问题,但您可能需要将 jQuery(document).ready(function(){ 更改为 $(function(){)。它执行完全相同的操作。

关于您的问题,您是否尝试过使用 debugger 单步执行?这将帮助您查明点击处理程序是否被触发。

如果是href属性的内容导致问题,你可以尝试用“/”而不是“#”?显然,当 JavaScript 被禁用时,这会产生不同的行为。当 JS 被禁用时你希望发生什么?

此外,area必须有一个祖先映射元素。是吗?

如果将点击处理程序绑定(bind)到区域本身而不是其父区域,可能会有所帮助。

关于jquery - Safari 没有获取 jquery 点击功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7332338/

相关文章:

html - 文件 ://protocol not working under ssl?

javascript - .load() 完成时的 jQuery Action

javascript - 在 jquerymobile 页面中动态添加元素

javascript - 在javascript或Jquery中,哪种对象具有.element属性

php - yii2:jquery 如果 gridview 列包含特定值则更改颜色

javascript - Angular 应用程序因一行代码而损坏,仅适用于 Safari,可在所有其他浏览器中工作

iOS Safari,在独立模式下运行我们的网络应用程序时,iOS 在后台崩溃

ios - 无法使用 Safari 检查 iOS 11 设备

JavaScript - 将随机数/变量插入动态超链接?

javascript - 为什么要将参数传递给 CSS 和 JavaScript 链接文件,如 src ="../cnt.js?ver=4.0"?