我知道如何禁用一個超鏈接,所以當用戶點擊它時,什麼都不會發生。下面是示例:如何禁用所有超鏈接使用jquery
$('#myLink').click(function(e) {
e.preventDefault();
//do other stuff when a click happens
});
但現在我有內li
和div
我的傳呼機許多超鏈接。它看起來像:
<div id='pager'>
<ul>
<li>
<a href='search.aspx?page=1'>1</a>
</li>
<li>
<a href='search.aspx?page=2'>2</a>
</li>
<li>
<a href='search.aspx?page=3'>3</a>
</li>
<li>
<a href='search.aspx?page=4'>4</a>
</li>
</ul>
</div>
我想在所有的超級鏈接,在我的div
通過兩個程序迭代並啓用/禁用所有。因此,當用戶點擊時沒有發生任何事情,也不會發生回傳。一個例程將全部禁用,一個例程將像以前一樣啓用所有超鏈接。這怎麼能實現?
它可能工作... //更好地在這裏使用實時事件處理程序,performancewise $( '')。live('click',function(){... return false;}); //現在簡單地殺死這樣的綁定 $('a')。die('click'); – Thomas 2012-07-18 18:41:22
托馬斯沒有冒犯,但那是個可怕的建議:-)因爲使用它的意外後果,'live'被廣泛譴責。如果您確實想要考慮可能稍後添加到頁面的新A標籤,那麼'delegate'是更好的方法。 (有關更多信息,請參閱http://stackoverflow.com/questions/4579117/jquery-live-vs-delegate) – machineghost 2012-07-18 18:42:39
@machineghost除非您要委託給文檔 - 這與「現場」性能相同-明智的。 – Blazemonger 2012-07-18 18:47:54