我是按类名为一堆锚点分配一个点击事件,它适用于除Firefox以外的所有浏览器,这里是JS:
var click_addthis = function(e, href) {
if (!e) {
var e = window.event;
}
e.cancelBubble = true;
if (e.stopPropagation) e.stopPropagation();
window.open(href, "Share It", null);
return false;
}
$(document).ready(function() {
$(".addthis_button_facebook").click(function() { click_addthis(event, this.href) });
$(".addthis_button_twitter").click(function() { click_addthis(event, this.href) });
});
我错过了什么吗? 感谢
答案 0 :(得分:6)
Firefox的问题在于此部分:
$(document).ready(function() {
$(".addthis_button_facebook").click(function() { click_addthis(event, this.href) });
$(".addthis_button_twitter").click(function() { click_addthis(event, this.href) });
});
您需要从处理程序传递事件,以使其一致,如下所示:
$(document).ready(function() {
$(".addthis_button_facebook").click(function(e) { click_addthis(e, this.href) });
$(".addthis_button_twitter").click(function(e) { click_addthis(e, this.href) });
});
您也可以将其缩短至此,因为您使用相同的功能(return false
也会停止传播):
$(document).ready(function() {
$(".addthis_button_facebook, .addthis_button_twitter").click(function() {
window.open(this.href, "Share It", null);
return false;
});
});