1

次の QUnit テストがあります。

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')無駄に努力しました。

これを読んでくれてありがとう。大変お世話になりました。

注:テストは、目的の動作を対象としています。実装は、テストが想定どおりに実行されていることを確認するためのものです。

4

1 に答える 1

-1

トリガーを使用してイベントを発生させたいと思います。

$('targetElement').trigger('eventName');
于 2012-10-24T14:30:14.557 に答える