簡體   English   中英

Firefox鏈接到javascript函數在不打算時打開一個新窗口

[英]Firefox link to javascript function opens a new window when not intended

我有這個問題,當我在Firefox中有這個html它打開一個新窗口

<a style="float:right;" 
href='javascript:window.location.href="#";'onClick="javascript:addNewRecord();">
New Record</a>

我嘗試過self.location,window.location,#body和#h1作為href。

最初我有代碼,但在firefox中沒有做任何事情,只是打開一個新窗口,而不是執行我的功能。 該代碼在chrome中非常完美。

<a style="float:right;" href="javascript:addNewRecord();">New Record</a>

規范的內聯方式是

<a style="float:right;" href="#"
onClick="addNewRecord(); return false">New Record</a>

或更好:

<a style="float:right;" href="#"
onClick="return addNewRecord()">New Record</a>

其中addNewRecord在函數末尾返回false


更好的方法是

window.onload=function() {
  document.getElementById("addLink").onclick=addNewRecord;
}
function addNewRecord() {
  ...
  return false;
}

<style>
#addLink { float:right }
</style>

<a href="#" id="addLink">New Record</a>

由於在鏈接上濫用HREF只是為了得到一個指針是不受歡迎的,你可以考慮帶有onclick和cursor:指針的<span> 它需要更多努力才能使例如屏幕閱讀器可以訪問這樣的元素。

嘗試:

onClick="addNewRecord();return false"

代碼的行為方式完全取決於addNewRecord()函數的作用(包括它返回的內容)。

沒有看到內部的功能很難說,但我會說發生的事情就在那里。

請注意,您在href =“”部分中放置的內容可能不會影響您所看到的行為。

嘗試這個

<a onclick="javascript:addNewRecord();">New Record</a> 

暫無
暫無

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

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