簡體   English   中英

自動點擊以動態添加鏈接

[英]Auto click to dynamically added link

我想自動單擊到動態添加的鏈接。 這是我的劇本

document.write("<a id='tikla' href='http://www.example.org'>tikla</a>");

$('#tikla').click();

但是它不起作用,因為該鏈接是動態添加的對象。 正確的做法是什么?

你想做什么? 看來您只想前往href位置?

如果是這樣的話,你可以去

window.location.href = 'http://www.example.org';

您需要先添加點擊處理程序,然后才能觸發點擊事件

現場演示

document.write("<a id='tikla' href='http://www.example.org'>tikla</a>");

$('#tikla').click(function(){
     alert("clicked");
});

$('#tikla').click();

對於綁定動態添加的元素的事件,jQuery使用jQuery on()提供事件委托

委托活動

委派事件的優勢在於,它們可以處理來自后代元素的事件,這些事件在以后的時間添加到文檔中。 通過選擇保證在附加委托事件處理程序時會出現的元素,您可以使用委托事件來避免頻繁附加和刪除事件處理程序的需要。

$( "#staticparent" ).on( "click", "#tikla", function() {
  alert("clicked");
});

采用

$('#tikla').get(0).click();

因為,您需要模擬dom元素的單擊。

$('#tikla').click(); 將觸發綁定到該錨元素的jquery click事件。 在您的情況下,錨元素沒有任何綁定。

小提琴

您也可以這樣嘗試...

 document.write("<a id='tikla' href='http://www.example.org'>tikla</a>"); window.location.href = $('#tikla').attr('href'); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 

嘗試這個,

$("<a id='tikla' href='http://www.example.org'>tikla</a>")
    .appendTo('body') // appendto body
    .get(0).click(); // triggering click to itself

 $("<a id='tikla' href='http://www.example.org'>tikla</a>") .appendTo('body') .get(0).click(); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 

var myLink = document.getElementById('tikla');
myLink.click();

謝謝大家,但沒有人在Internet Explorer中工作。 我發現此簡單的javascript在所有瀏覽器中均可使用。

暫無
暫無

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

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