4

试图隐藏输入文件,以便我可以为所有浏览器设置样式,并希望使用 js 来触发文件上传对话框

我的印象是.fireEvent(eventType)mootools 和.trigger(eventType)jQuery一样

jQuery:http: //jsfiddle.net/KnqFj/1/

$('#trig_file').click(function(){
    console.log('click');
    $('#file').trigger('click');
});

mootools:http: //jsfiddle.net/X6mqR/7/

$('trig_file').addEvent('click', function(){
    console.log('click');
    $('file').fireEvent('click');
});​​

但似乎不一样

任何帮助表示赞赏

4

1 回答 1

4

仅供大家参考,这可用于根据您的喜好设置浏览按钮的样式。您可以完全隐藏输入文件并在任何元素上触发事件。

jQuery:http: //jsfiddle.net/g9sry/3/

$('#trig_file').click(function(){
    console.log('click');
    $('#file').trigger('click');
});​

mootools:http: //jsfiddle.net/X6mqR/17/

$('trig_file').addEvent('click', function(){
    console.log('click');
    $('file').click();
});​

我在 FF IE7 和 Up Opera Safari Chrome 中进行了测试,但我们仍然没有发现为什么 fireEvent 与 jquery 中的触发器不同

于 2012-11-27T02:22:52.810 回答