Era*_*ray 1 javascript jquery coding-style
我有这样的链接:
<a href="#" onclick="renkDegistir()" title="Yaz .......
Run Code Online (Sandbox Code Playgroud)
和JS代码:
function renkDegistir()
{
$("#cont #main article").addClass("siyah-stil");
}
Run Code Online (Sandbox Code Playgroud)
单击此链接时,siyah-stil类将添加到文章中.但我想这样做,如果链接点击第二次删除siyah-stil类.
综上所述 ,
on first click : addClass("siyah-stil");
on second click : removeClass("siyah-stil");
Run Code Online (Sandbox Code Playgroud)
尝试使用toggleClass()
:
function renkDegistir()
{
$("#cont #main article").toggleClass("siyah-stil");
}
Run Code Online (Sandbox Code Playgroud)
但我建议删除内联onclick
属性,并切换到jQuery的click()
事件处理程序:
$('a').click(
function(){
$("#cont #main article").toggleClass("siyah-stil");
});
Run Code Online (Sandbox Code Playgroud)
编辑致电@Eray的评论(如下):
你能解释一下,为什么jQuery的
click()
函数比in-lineonclick
属性更好?
我更喜欢使用非内联代码的原因是它降低了更改onClick
事件的复杂性; 因为它们在一个地方被改变,而不是必须onclick
在每个a
(或其他)元素中改变属性.不可否认,你可以通过简单地改变renkDegistir()
函数来实现这个好处,但最后你会得到为后代命名的函数,而不是函数的固有特性.
它还使其他人更容易接管,调整代码,并在出现错误时消除错误.
归档时间: |
|
查看次数: |
90 次 |
最近记录: |