有时链接无法点击。

13 浏览
0 Comments

有时链接无法点击。

我在一个

标签中有一个链接按钮,我需要将其禁用。这在IE上可以工作,但在Firefox和Chrome上不起作用。

我尝试了以下所有方法,但在Firefox上不起作用(使用1.4.2 js):

$(".myLink").attr('disabled', 'disabled');
$(".myLink").attr('disabled', true);
$(".myLink").attr('disabled', 'true');

注意-我不能取消注册锚点标签的点击函数,因为它是动态注册的。而且我必须以禁用模式显示链接。

0
0 Comments

有时链接无法点击的问题出现的原因是因为在CSS中应用了以下样式:

td.disabledAnchor a{
       pointer-events: none !important;
       cursor: default;
       color:Gray;
}

这段CSS代码会禁用锚点标签的点击事件。尽管这是一个不错的解决方法,但它并不被Internet Explorer支持。它在所有其他浏览器中都可以使用,但在IE 9及以下版本中无法生效。如果您正在使用IE 10,那么它应该可以正常工作。

这是一个简单但有点不正规的解决方法。如果您需要使用!important,那么您的CSS代码可能存在问题。下面是我给出的更好的解决方法!我的解决方法适用于所有浏览器,包括旧版本的IE浏览器!

然而,正如Adriano Repetti在上面提到的,这种解决方法无法满足键盘事件的使用情况。用户仍然可以通过Tab键切换到链接并按回车键。

因此,使用cursor: not-allowed可能更合适。

0
0 Comments

有时候链接无法点击的问题可能出现的原因是CSS样式中添加了a.disabled的选择器,并设置了pointer-events: none;cursor: default;。解决方法是在CSS中添加这个选择器的样式。

另外,还可以通过实例化一个类AnchorDisabler来实现禁用链接的功能。这个类是基于ES2015或者coffeescript编写的,根据个人偏好选择使用哪种版本。

在ES2015版本中,需要先安装依赖包key.js,然后引入Key, Keycodes。之后实例化AnchorDisabler类,并传入一个可选的选择器参数selector。在构造函数中,对选中的元素绑定了clickkeyupfocus事件的处理函数。

类中的isStillDisabled函数用来检查目标元素是否仍然被禁用,它会判断目标元素是否具有disabled类或者disabled属性的值为'disabled'。如果目标元素仍然被禁用,返回true,否则返回false

onFocus函数用来处理当一个禁用的元素尝试获取焦点时的情况,它会将焦点转移到下一个可获取焦点的元素。

onClick函数用来处理点击事件,禁用的元素被点击时会阻止默认行为。

onKeyup函数用来处理按键事件,如果按下的键不是Enter键,则不做任何操作;如果按下的是Enter键并且禁用的元素仍然被禁用,会阻止默认行为。

在coffeescript版本中,与ES2015版本的功能相同,只是语法略有不同。

如果需要使用纯jQuery/javascript的解决方案,请参考下面的答案。

总结起来,解决这个问题的方法是通过CSS设置禁用链接的样式或者实例化一个类来处理禁用链接的交互。

0
0 Comments

有时候链接不能点击的问题可能出现的原因是:

1. 某些浏览器不支持使用CSS的pointer-events属性来禁用链接。

2. 在某些情况下,点击事件已经绑定到了其他函数,导致事件处理程序顺序出现问题。

3. 某些人可能会禁用JavaScript,导致没有任何保护措施。

4. 链接仍然可以通过键盘进行导航。

解决方法包括:

1. 使用CSS的pointer-events属性来禁用链接,但这种方法在某些浏览器上可能不被支持。

2. 使用disabled属性来禁用链接,并通过CSS设置样式来显示为禁用状态。

3. 通过拦截点击事件来禁用链接,并在条件满足时阻止默认行为。

4. 清除链接的href属性,使其无法被点击。

5. 添加/删除onclick函数来禁用/启用链接。

另外,还可以使用tabindex属性来防止链接被聚焦,并使用ARIA属性来提供更好的可访问性。

总之,根据具体情况选择合适的解决方法来解决链接不能点击的问题。

0