event.preventDefault() 或 return false 在 IE9 中不起作用

2024-01-11

我试图让以下代码在所有版本的 IE 中工作,就像它在其他浏览器中工作一样:

  <a href="" class="specificClass">Click Me </a>
    //Javascript
     $(".specificClass").click(
                        function(e) {
                            e.preventDefault();
                           // Do Something
                             //return false; Doesn't work either
                        }
                );

切换到href="#"使其尝试转到页面顶部,同样仅在 IE9 中。例如: 离开href=""在 IE9 中重定向到当前链接本身。

<a href="#" onclick="doSomething(this); return false;"> Click Me Two </a>

似乎两种方法都会触发调用 onclick Javascript,但默认行为href=""没有被覆盖。如果我使用event.preventDefault()什么都没发生。

以下方法有效:

<a href="javascript:doSomething(this);"> Click Me Two </a>
function doSomething(me) {

    // event.preventDefault is not needed as the javascript is added via href

}

但是我不想为我的所有锚标记添加 href="javascript:" 或 onclick ="doSomething"只是为了让它在 IE9 中工作。 我也不想使用不同的标签(例如尝试过 span 标签),因为在所有浏览器中设置样式很棘手。

还有其他想法吗?

看起来这是一个合法的错误,我已经提交了修复它的请求。我现在还提出了一个解决方法:https://connect.microsoft.com/IE/feedback/details/812247/event-preventdefault-or-return-false-dont-work-in-ie9 https://connect.microsoft.com/IE/feedback/details/812247/event-preventdefault-or-return-false-dont-work-in-ie9


在 IE9 中,仍然部分使用旧的事件处理程序模型。preventDefault()仅当使用以下方式附加事件侦听器时才有效addEventListener().

如果您想阻止内联处理程序的默认操作,则必须使用旧方法:

event.returnValue = false;
event.cancelBubble = true; // This is affects like event.stopPropagation() in older IEs

虽然 jQuery 不工作很奇怪,但我对此没有任何解释...除非您在兼容模式下运行 IE 并使用 jQuery 2.X?


EDIT

也可以参考一下console如果未打开开发工具,对象将在 IE

// The very first lines in the global context
if (!window.console) {
    window.console = {
        log: function () {}
        // Add other console methods, if the scripts on the page are using them
    }
}

虽然console上面的代码可以避免问题,最好从要发布的最终代码中删除所有日志记录。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

event.preventDefault() 或 return false 在 IE9 中不起作用 的相关文章

随机推荐

  • 将嵌套对象列表非规范化/展平为点分隔的键值对

    如果我的嵌套对象是字典 那就更简单了 但这些是字典列表 例子 all objs1 a 1 b ba 2 bb 3 ba 21 bb 31 c 4 a 11 b ba 22 bb 33 bc h 1 e 2 c 44 我期望以下格式的输出 a
  • 我可以在 UITableviewCell 中使用 viewDidLoad 方法吗?

    我可以用吗viewDidLoad中的方法UITableviewCell 不 你不会在自定义单元类子类 UITableViewCell 中编写 viewDidLoad 它是 UIViewController 的一部分 你有一个名为的方法 vo
  • Chrome 在 z 索引方面是否正在退化(或者我做错了什么)?

    我正在制作的网站的导航作为 3 个选项卡 单击后将显示 3 个相应的内容 我刚刚意识到它不起作用铬22 虽然我 90 确定一年前网站上线时我在 Chrome 上测试过它 但在IE9 and FF16 这是我的问题的摘要 http jsfid
  • 设置android操作栏的背景颜色

    我正在使用兼容性库 v7 进行操作 我只是想将操作栏的颜色 适用于 Android 2 1 及更高版本 尽管我运行 Android 4 4 2 设置为纯色 但颜色不会改变 它保持不变 我也尝试过用颜色创建一个实体可绘制对象 但这也没有改变
  • 使用 libtool 从共享库加载重复的函数名

    我正在尝试创建一个 调试 共享库 即 so 或 dll 文件 该库调用另一个具有与调试库相同的 C API 的 真实 共享库 在本例中 是为了模拟 PKCS 11 API 但是 我遇到了麻烦 调试库的链接映射与真实库的链接映射发生冲突 导致
  • 如何让玩家在路径中移动到另一侧?

    我希望当触摸开始时 玩家 红色圆圈 移动到圆形路径的另一侧 我已经让玩家遵循一条路径 但我还没有在互联网上找到我的问题的答案 override func didMoveToView view SKView player SKSpriteNo
  • 在 Windows 上安装 R Studio 服务器

    是否可以在 Windows 计算机上安装 RStudio Server 我知道如果我使用AMI就可以 但是如果没有AMI我怎么安装它呢 我读过http www r bloggers com rstudio server part 2 pro
  • COM+ 库应用程序的目的是什么?

    创建 COM 应用程序时 向导会提供在库应用程序和服务器应用程序之间进行选择的选项 服务器应用程序在单独的进程中激活 这可用于以廉价的方式将 64 位使用者与 32 位进程内 COM 组件进行互操作 在调用者进程中激活的库应用程序有什么用
  • 聚合的意外输出

    在尝试时aggregate另一个问题here https stackoverflow com questions 14434632 find frequency of each unique column in a matrix or da
  • NLTK 将标记化句子转换为同义词集格式

    我希望使用 NLTK 获得单个单词和句子中每个单词之间的相似性 NLTK可以得到两个特定单词之间的相似度 如下所示 此方法要求给出对该单词的具体引用 在本例中为 dog n 01 其中狗是名词 我们希望使用第一个 01 NLTK 定义 do
  • 您是否需要创建一个分支来检查特定的 git 修订版?

    我想做的一个常见的事情是将我的工作副本恢复到特定修订版 进行一些测试 然后将其带回我当前母版的头部 过去我天真地做了一个 git checkout hash 结果却失去了理智 从那以后 我了解到我可以创建一个分支并检查它 切换回来并删除该分
  • Docker Alpine - 启用 GD JPEG 支持

    我在通过 PHP FPM 的 Alpine 图像获取 GD Jpeg 支持时遇到问题 我已经尝试了所有我能想到的组合来使其发挥作用 下面是我的 Dockerfile 的一个片段 FROM php 7 1 fpm alpine RUN apk
  • Matlab 曲线拟合不适用于小值(1e-12),我该怎么办?

    我安装了曲线拟合工具箱 并且正在尝试将扩散数据拟合到特定函数 该函数是以下形式的误差函数 y 3500 2500 erf x x0 2 sqrt D t 我希望该应用程序为我提供合理的值D and x0 而 t 是预定义的常数 拟合所基于的
  • 如何从授权中排除一个网址

    我的 web xml 如下所示
  • Android 分享来自 url 的图像

    我想使用以下代码共享图像 Intent sharingIntent new Intent Intent ACTION SEND Uri imageUri Uri parse http stacktoheap com images stack
  • Azure 数据库的密码重置

    我有一个新的 Azure 帐户 我能够以管理员身份登录 管理 页面 但我忘记了其中一个数据库的密码 我想重置该数据库的密码 我怎么做 微软似乎没有关于这方面的知识库 至少我找不到 谢谢 如果您指的是特定 Windows Azure SQL
  • 根据条件每行中第一次出现的位置

    我有下表 其中包含有序变量 table lt data frame Ident c Id 01 Id 02 Id 03 Id 04 Id 05 Id 06 X01 c NA 18 0 14 0 NA X02 c 0 16 0 17 0 53
  • 使用 iframe 停止 Comet 的浏览器抖动

    当我通过 iframe 推送使用 comet 时 当数据通过 iframe 推送时 浏览器颤动器将永远保持旋转 Lightstreamer 也在使用 iframe 但是他们如何设法让它停止呢 我发现了一个类似的帖子here https st
  • 为什么 Google Analytics(分析)显示的访问次数少于 One&One 统计数据?

    将谷歌分析结果与 one one 托管的每月统计数据进行比较显示出巨大的差异 上个月 Google 显示 1046 次访问 One one 统计数据显示 15304 次独立访问 谷歌代码位于每个页面上出现的页脚中 我知道 ga 只适用于启用
  • event.preventDefault() 或 return false 在 IE9 中不起作用

    我试图让以下代码在所有版本的 IE 中工作 就像它在其他浏览器中工作一样 a href class specificClass Click Me a Javascript specificClass click function e e p