簡體   English   中英

Javascript:click()無法導航到Firefox 2中的鏈接

[英]Javascript: click() not navigating to the link in Firefox 2

在這里遵循答案時: Click()在IE中有效,但在Firefox中無效

我不再收到“單擊不是功能消息”錯誤消息,並確實收到了“已單擊”警報消息,但是瀏覽器無法導航到該頁面。 我在最新版本的firefox上進行了嘗試,並且可以導航,但在Firefox 2中卻沒有發生。

HTMLElement.prototype.click = function() {var evt = 
this.ownerDocument.createEvent('MouseEvents');evt.initMouseEvent('click', true, true, 
this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, 
null);this.dispatchEvent(evt);};

document.onclick= function(event) { if (event===undefined) event= window.event; var target= 
'target' in event? event.target : event.srcElement; alert("clicked");};

document.getElementById("anId").click();

document.onclick= function(event) { if (event===undefined) event= window.event; var target= 
'target' in event? event.target : event.srcElement; alert("clicked");};

使用document.getElementById("anId").onclick(); 它將在所有瀏覽器上運行。 click(); 僅適用於IE。

我認為FF2太舊了,不確定它是否支持click原型,更好的方法是使用類似這樣的方法

html

<a id="link" href="url">click here</a>

js

$(document).ready(function(){
    $("#link").click(function(){
        window.location.href = $(this).attr('href');
    });
});

如果這是您不想做的事情,也可以嘗試如下操作:

$(document).ready(function(){
        $("#link")[0].click();
    });

您可以嘗試使用jQuery插件並使用它的.click()事件。

您可以在此處查看更多詳細信息。

希望這可以幫助.. :)

這個問題已經在這里回答

這是您用來添加功能的內容...

HTMLElement.prototype.click = function() {
   var evt = this.ownerDocument.createEvent('MouseEvents');
   evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
   this.dispatchEvent(evt);
}

嘗試使用JQuery ... http://api.jquery.com/click/也許您正在嘗試偵聽不希望接受onClick事件的html元素。 click()僅在IE中有效。 如果您嘗試使用Jquery事件監聽器click ,則可以解決所有主要瀏覽器中的所有問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM