当前位置:  开发笔记 > 前端 > 正文

在Chrome/WebKit/Safari中停用锚点

如何解决《在Chrome/WebKit/Safari中停用锚点》经验,为你挑选了1个好方法。

请考虑以下代码:

$("a").attr("disabled", "disabled");

在IE和FF中,这将使锚点无法点击,但在基于WebKit的浏览器(谷歌浏览器和Safari)中,这没有任何作用.disabled属性的优点在于它很容易被删除,并且不会影响href和onclick属性.

您对如何获得所需结果有任何建议吗?答案必须是:

很容易恢复,因为我想在运行AJAX调用时禁用表单输入控件.

必须在IE,FF和WebKit中工作

Neall.. 7

我假设你有一个绑定到这些锚元素的onclick事件处理程序.只需让您的事件处理程序检查"已禁用"属性,并在设置时取消该事件.您的事件处理程序看起来像这样:

$("a").click(function(event){
  if (this.disabled) {
    event.preventDefault();
  } else {
    // make your AJAX call or whatever else you want
  }
});

您还可以设置样式表规则以更改光标.

a[disabled=disabled] { cursor: wait; }

编辑 - 简化了评论中建议的"禁用"检查.



1> Neall..:

我假设你有一个绑定到这些锚元素的onclick事件处理程序.只需让您的事件处理程序检查"已禁用"属性,并在设置时取消该事件.您的事件处理程序看起来像这样:

$("a").click(function(event){
  if (this.disabled) {
    event.preventDefault();
  } else {
    // make your AJAX call or whatever else you want
  }
});

您还可以设置样式表规则以更改光标.

a[disabled=disabled] { cursor: wait; }

编辑 - 简化了评论中建议的"禁用"检查.

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有