2015-12-02 60 views
0

我想單擊頁面元素加載上的<span>,但我的範圍沒有課程或ID。
跨度爲如何點擊使用javascript的<span>。 <span>沒有課程或ID

<div class="block-title"> 
<strong><span>Refine By</span></strong> 
</div> 

我想是這樣

$('.block-title > span').click(); 

但這將返回錯誤

TypeError: $(...) is null

+0

你想點擊事件附加到了嗎?點擊();} – AtheistP3ace

+0

'$('。block-title> span')。click(function(){});' –

+0

我想要這樣的$('。block-title> span')。 但是這返回錯誤 TypeError:$(...)爲空 –

回答

6

如果要觸發元素上的點擊,你可以不喜歡它這個:

var span= document.querySelector(".block-title span"); 
var click= new Event('click'); 
span.dispatchEvent(click); 

Complete Vanilla JS Demo

或者,如果你想的jQuery(呸)版本:

//Creates and dispatches a click event 
$('.block-title span').trigger('click'); 

Complete jQuery Version


年長的答案

使用純JavaScript,您可以將元素的onclick設置功能:

document.querySelector(".block-title span").onclick = fn; 
// or like document.querySelector(".block-title span").onclick = function(){}; 

或者,如果你想使用一個事件監聽器:

var span = document.querySelector(".block-title span"); 
span.attachEvent('onclick', fn); 
span.addEventListener('click', fn, false); 

或者,如果你想使用jQuery (呸):從jQuery API

$('.block-title span').click(function() { }); 
+0

我想要一些這樣的$('。block-title> span')。click(); 但這返回錯誤 類型錯誤:$(...)爲空 –

+0

這是jQuery的,我的回答只是使用香草JS –

+0

這是空,你的選擇是搞砸了。 –

1

使用.trigger(類型)

$('.block-title span').trigger('click'); 

​​

+0

@西蒙,我得到TypeError:$(...)在控制檯爲空 –

+0

可能因爲該元素不存在然後 – Kerstomaat

+0

元素是exixt 110%。我已經從源碼 –