モバイルアプリで何らかの機能テストを行っていると思います。少し前に (CasperJS を使用して) 同じことを行っていましたが、その過程で次の関数を作成しました。
// I've commented out CasperJS specific stuff, don't use it if you don't need it
function triggerEventOnPage(selector, eventName, memo) {
//casper.evaluate(function(selector, eventName, memo){
var event;
var element = document.querySelector(selector);
event = document.createEvent("Event");
event.initEvent(eventName, true, true);
event.memo = memo || { };
element.dispatchEvent(event);
//}, selector, eventName, memo);
//wait();
}
次のように呼び出して、テストで使用できます。
triggerEventOnPage(".edit-list-button", 'tap');
tap
ただし、ネイティブイベントがないことに注意してください。touchstart
、tachmove
、touchend
イベントのみがありtap
、その 3 つに基づいて の実装が行われます。したがって、tap
あなたが使用しているイベントの実装は、私が使用していたものとは異なる可能性があり、上記の機能が機能しない可能性があります。
編集: jQueryを使用しているため、$('button.nominate').trigger('tap')
問題なく動作するはずです。@NULL は、セレクターが無効であることを示している可能性があります。