Я часто использую ссылки с href='#'
при вызове ресурсов ajax.
Я заметил, что IE делает слышимый "щелчок" при переходе по этим ссылкам.
Вот обходной путь:
$("#element")
.click(function(){return false;})
.bind("click", function(){ alert(this); });
ОДНАКО, когда я пытаюсь инкапсулировать эту функциональность в плагин jQuery, я не возвращаю успешно элемент "clicked".
Например, если я воспользуюсь описанным выше подходом, я получу фактический элемент A, по которому щелкнули.
Но если я напишу плагин, подобный этому:
(function($){
$.fn.clickless = function(fnCallback) {
return this
.click(function(){return false;})
.bind("click", function(){
fnCallback.call();
});
}
})(jQuery);
А затем позвоните
$("#element").clickless(function(){
alert(this);
});
Я получу объект Window
, который не помогает, когда я пытаюсь найти фактический тег A.
Может я просто неправильно пишу плагин - есть идеи?
Большое спасибо,
Michael