[英]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.