1
我有以下QUnit測試:爲什麼mouseover或mouseout事件不會從測試中觸發?
test 'can view saved status and undo if needed', ->
save_link = $('.save-link')
my_profile_div = $('.searchbar .span5')
undo_save = $('#undo-save')
my_profile_div.mouseover()
equal(undo_save.css('visibility'), 'hidden')
my_profile_div.mouseout()
save_link.click()
my_profile_div.mouseover()
equal(undo_save.css('visibility'), 'visible')
my_profile_div.mouseout()
equal(undo_save.css('visibility'), 'hidden')
它點擊一個鏈接,那麼預計一些懸停行爲是存在該元素my_profile_div
。不幸的是,mouseover和mouseout事件不會從測試中觸發。我用這個實現的時候沒有得到警報:
$('.searchbar .span5').mouseover ->
alert('mouseover')
$('.searchbar .span5').mouseout ->
alert('mouseout')
在我得到警報的瀏覽器,而不是當我運行上面的測試,這讓我覺得我沒有正確觸發的事件。我也試過trigger('mouseover')
無濟於事。
感謝您百忙之中閱讀此,人的時間。我非常感謝你的幫助。
注:測試是所需的行爲。實施只是爲了確保測試正在做它應該做的。
我也試過,但我仍然遇到同樣的問題。 – Lyudmil
好的,你的實際錯誤是什麼?另一件事。我認爲你的測試代碼是在$(document).ready或按鈕點擊後調用的函數裏面? –
我沒有收到錯誤消息。正如你所看到的,如果mouseover/mouseout事件觸發,你將不得不看到兩個警報,當我運行我的測試時不會發生這種警報,但是當我將腳本加載到網頁時會發生。 我正在使用QUnit,所以測試代碼是一個網頁,測試是從