我正在尝试在更改选择元素时触发函数。
由于 Ipad 在 on('change') 上遇到问题,我还想绑定到 'blur',这在 Ipad 上运行良好。
但是我不希望这两个事件都触发该函数两次,所以我需要某种钩子来确保如果更改和模糊都触发,则底层函数只触发一次。
这就是我现在正在做的事情,但是......不是很好:
// make sure binding is only assigned once
var compSel = $('#my_select');
if ( compSel.jqmData('bound') != true ){
console.log("bound");
compSel.jqmData('bound', true)
.on( $.support.touch ? 'blur' : 'change', function(){
console.log("trigger");
// run function xyz
})
}
如果您可以使用所有使用blur的可触摸设备,则此方法有效。
问题:
有没有人有更好的主意来确保模糊和更改只触发一次功能?
感谢帮助!