完全禁用一个元素,包括在点击动作时调用其他javascript函数的链接
disable an element completely including links calling other javascript functions on click action
<li class=" active">
<input class="check-shopby" type="checkbox" onclick="$(this).next().click()" checked="checked">
<a class="checked" href="http://mysite/~dev433/products//cooking/cook-tops.html" onclick="$(this).previous().checked = false;" style="cursor: pointer;">
<img width="150" alt="" src="site/media/wysiwyg/attribute_Sets_images/Fagor-CE9-20-1.jpg">
<span> Electricity (74) </span>
</a>
<a onclick="otherjavascriptfunction" href="/somewhere">link</a>
</li>
好了,这是我的内容在一个li项目,当我去在某些条件下,我希望它(li项目本身和所有其他可点击的项目)是完全不可点击的,如果可能的话,一些不可点击的(禁用)标志。
这就是我所尝试的,但它取代了我的内容,$("div li a").replaceWith(function() { return $(this).text(); });
你可以在captureMode中添加clickEventListener来监听li
元素
如果为true,则useCapture表示用户希望初始化捕捉。初始化捕获后,指定类型的所有事件会在分派之前分派给已注册的监听器吗到DOM树中它下面的任何EventTargets。事件是通过树向上冒泡不会触发侦听器指定使用捕获。
var disableClicks = document.getElementsByClassName("disable-inner-clicks");
disableClicks.forEach(function(element){
element.addEventListener('click', function(e){
e.preventDefault();
e.stopPropagation();
}, true);
});
然后对于任何你想要禁用点击的元素,只需添加class = disable-inner-clicks
<li class="active disable-inner-clicks">
....
</li>
无论里面有什么内容,单击都是禁用的,当满足条件时,只需将类添加到元素
解决方案很简单。设置所有子节点禁用,并删除点击事件。
$('li.active *').prop('disabled', true).off('click');
相关文章:
- 使用metro-uiJS对话框调用其他文件html
- 这个关键字位于$.ajax()中,用于调用其他函数来设置url
- 如何在Javascript中创建一个调用其他函数的函数
- 我用脚本创建了一个按钮.我可以通过点击按钮调用其他函数吗?我这样做,但失败了
- 在ASP中调用HTML以调用其他脚本
- Javascript 调用其他对象方法
- 用于调用其他命令的 Windows 脚本
- 需要解析其他网页的值.首先,我需要调用其他网页并从中解析 XML 值
- jQuery调用其他事件处理程序中的事件处理程序函数
- 一个 JavaScript 函数调用其他几个函数
- Ajax 可以调用其他 Ajax 页面吗?
- 当我调用其他提交函数时,$anchorScroll正在进行第二次单击
- OOJS 调用其他方法
- Javascript 对象调用其他对象粉碎迭代器
- 如何调用“;点击“;输入类型“on input type”;文件“;通过调用其他元素的上下文
- 使用此函数在回调中调用其他函数
- 当javascript函数更改html输入文本时,我希望输入文本像调用其他JS函数一样触发事件
- 调用其他标记的onclick事件
- 如何使用javascript来调用其他类似于此代码的javascript
- 在JavaScript中调用其他选项方法