单击元素打开输入文件对话框,fireEvent Mootools相当于jQuery触发器
试图隐藏输入文件,以便为所有浏览器设置样式,并希望使用js启动“文件上载”对话框 我的印象是mootools中的单击元素打开输入文件对话框,fireEvent Mootools相当于jQuery触发器,jquery,mootools,Jquery,Mootools,试图隐藏输入文件,以便为所有浏览器设置样式,并希望使用js启动“文件上载”对话框 我的印象是mootools中的.firevent(eventType)与jQuery中的.trigger(eventType)相同 jQuery: mootools: 但情况似乎不一样 非常感谢您的帮助仅供大家参考,这可用于根据您的喜好设置浏览按钮的样式。您可以完全隐藏输入文件并在任何元素上激发事件 jquery: mootools: 我参加了考试, FF IE7及以上 歌剧院 游猎 铬 但我们仍然没有找到为什么f
.firevent(eventType)
与jQuery中的.trigger(eventType)
相同
jQuery:
mootools:
但情况似乎不一样
非常感谢您的帮助仅供大家参考,这可用于根据您的喜好设置浏览按钮的样式。您可以完全隐藏输入文件并在任何元素上激发事件 jquery: mootools: 我参加了考试, FF IE7及以上 歌剧院 游猎 铬
但我们仍然没有找到为什么fireEvent与jquery中的触发器不同的原因。奇怪的是:它似乎在
#file
上触发了click事件,但没有触发与之关联的choose file操作。只是玩了一会儿。看起来好像mootools.fireEvent只会激发mootools通过addEvent附加的事件处理程序,即不是本机浏览器事件。只是出于兴趣$('file')。click()-似乎工作得很好。我对mootools了解不够,无法告诉您这样做是否合适?只是出于兴趣-底部的子句“这不会触发DOM事件”@Benn-这是因为单击/onclick
属性是DOM
方法,而不是mootools添加的方法。@Benn,这两个图书馆的实施有不同的范例。jQuery将您正在使用的DOM元素包装到jQuery对象中。与原型库类似,Mootools将函数添加到实际的DOM元素本身,因此.click()不是Mootools函数,而是DOM元素,因为$('file')返回的obj是一个具有mootool扩展名的DOM元素,而jQuery中的$('#file')返回一个包含DOM元素(0或更多)的jQuery对象。无论如何虽然我可能会补充我的发现,因为它也让我感兴趣。
$('#trig_file').click(function(){
console.log('click');
$('#file').trigger('click');
});
$('trig_file').addEvent('click', function(){
console.log('click');
$('file').fireEvent('click');
});
$('#trig_file').click(function(){
console.log('click');
$('#file').trigger('click');
});
$('trig_file').addEvent('click', function(){
console.log('click');
$('file').click();
});