Javascript 如何制作<;a>;类不可读取的标记?
我有一些带有子项的父导航项,我不需要单击父项 它们看起来像这样:Javascript 如何制作<;a>;类不可读取的标记?,javascript,jquery,css,anchor,Javascript,Jquery,Css,Anchor,我有一些带有子项的父导航项,我不需要单击父项 它们看起来像这样: <a href="parent">Parent Item</a> 是否有针对性地将标记与特定类别的.parent联系起来并使其不可读取?使用: $(function () { $('a.parent').on("click", function (e) { e.preventDefault(); }); }); 使用: 如果有人对纯CSS解决方案感兴趣(因为这个问题被
<a href="parent">Parent Item</a>
是否有针对性地将
标记与特定类别的.parent
联系起来并使其不可读取?使用:
$(function () {
$('a.parent').on("click", function (e) {
e.preventDefault();
});
});
使用:
如果有人对纯CSS解决方案感兴趣(因为这个问题被标记为CSS),您可以使用
就支持而言
信用证:如果有人对纯CSS解决方案感兴趣(因为这个问题被标记为CSS),您可以使用
就支持而言
信用证:如果您想避免使用jQuery库,没有它也很容易:
var disabled = document.querySelector('.parent');
disabled.addEventListener('click', function(e) {e.preventDefault();}, false);
如果要避免使用jQuery库,没有它也很容易:
var disabled = document.querySelector('.parent');
disabled.addEventListener('click', function(e) {e.preventDefault();}, false);
另一个纯CSS选项是用绝对定位的“封面”覆盖链接:
.parent{位置:相对;z索引:-1;}
.parent:在{content:”;位置:绝对;顶部:0;右侧:0;底部:0;左侧:0;}
另一个纯CSS选项是用绝对定位的“封面”覆盖链接:
.parent{位置:相对;z索引:-1;}
.parent:在{content:”;位置:绝对;顶部:0;右侧:0;底部:0;左侧:0;}
您可以在身体上放置一个监听器,而不是在每个.parent
上都放置一个监听器。在没有任何库支持的情况下,以下内容将在每个正在使用的浏览器中工作:
function stopClickOnParentClass(evt) {
var el = evt.target || evt.srcElement;
if (/(^|\s)parent(\s|$)/.test(el.className)) {
evt.preventDefault();
return false;
}
}
然后:
您还可以将类传递给函数并从中构建正则表达式,从而使该类成为动态的。您可以在主体上放置一个侦听器,而不是在每个
父对象上放置一个侦听器。在没有任何库支持的情况下,以下内容将在每个正在使用的浏览器中工作:
function stopClickOnParentClass(evt) {
var el = evt.target || evt.srcElement;
if (/(^|\s)parent(\s|$)/.test(el.className)) {
evt.preventDefault();
return false;
}
}
然后:
您还可以将类传递给函数并从中构建正则表达式,从而使该类成为动态的。@RobG如果有那么简单,我会的。这是建立在Ning的基础上的,Ning有自己的父链接,您不能删除。@RobG如果有那么简单,我会的。这是建立在Ning的基础上的,Ning有自己的父链接,您无法删除。这很好,但我忘记了在父元素下有子元素,当我输入这段代码时,子元素(即子菜单)不再出现。@Desi显然不会,因为您正在阻止默认行为,考虑改变你自己script@Mr.Alien:+1,更干净…css
始终优先于jQ
!!:)@外星人先生对不起,我不是想成为一个聪明的傻瓜。我很感谢你的回答,今天我学到了CSS的一些新东西。这很好,但我忘了提到我在父元素下有子元素,当我输入这段代码时,子元素(即子菜单)不会再下降了。显然,他们不会阻止你的违约行为,考虑改变你的行为。script@Mr.Alien:+1,更干净…css
始终优先于jQ
!!:)@外星人先生对不起,我不是想成为一个聪明的傻瓜。我很感谢你的回答,今天我学到了CSS的一些新东西。呵呵,谢谢。现在JS中有很多不错的添加(比如querySelector
),我甚至更希望避免使用jQuery。你觉得我的CSS解决方案怎么样?这对老浏览器来说可能很好,但对最新的浏览器来说可能太过了,我提供了一个简单的CSS解决方案,它只做一行:)很公平,尽管只支持IE11和更高版本使我觉得依赖指针事件
似乎有点快了。。。当然,这取决于网站。呵呵,谢谢。现在JS中有很多不错的添加(比如querySelector
),我甚至更希望避免使用jQuery。你觉得我的CSS解决方案怎么样?这对老浏览器来说可能很好,但对最新的浏览器来说可能太过了,我提供了一个简单的CSS解决方案,它只做一行:)很公平,尽管只支持IE11和更高版本使我觉得依赖指针事件
似乎有点快了。。。当然,这取决于网站。
<body onclick="stopClickOnParent(event);" …>