这是我的第一个问题.我有以下jquery代码:
$(document).ready(function(){
$("a").click(function(){
$(this).parent("li").css({textDecoration: "line-through"});
return false;
});
});
Run Code Online (Sandbox Code Playgroud)
工作得很好.它击中任何点击锚点的父li(html中有许多锚点和列表,而不仅仅是一个).但我想要这个功能,没有别的.包含整个jquery库这不是一种过度杀伤吗?
Unfortunateley我不太了解原始的javascript,有人可以为我转换这个吗?我会很感激.
编辑:哇,我对速度和答案的质量感到惊讶!所以首先要感谢大家!我会选择jonathon(edit2:roland)的解决方案,或者只是包含jquery.再次感谢!
包含整个jquery库这不是一种过度杀伤吗?
你告诉我.您可以为Google托管的库提供服务,该库可能已在客户端缓存.
在我看来,保持一致是关键.如果你习惯了jQuery,为什么不继续使用呢?您的代码将更易于维护.
你可能会发现我之前的一个问题很有趣:什么时候可以使用jQuery?
以下将以独立于浏览器的方式实现它.
<html>
<body onload="loaded()">
...content goes here....
<script>
function linkClickHandler(){
var parentNode = this.parentNode;
if(parentNode.tagName.toLowerCase()==="li"){
parentNode.style.textDecoration = "line-through";
}
return false;
}
function loaded(){
for (var i=0, links = document.links, numLinks = links.length; i<numLinks; i++){
links[i].onclick = linkClickHandler;
}
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)