现象:
如果在BootStrap的tab组件中,加入webuploader,并且不是默认页,则会出现webuploader点击无反应的情况,不会弹出“打开文件”对话框。
原因:
webuploader初始化有个条件,就是不能是隐藏的元素,如果隐藏的元素,则不能正确绑定事件。
解决:
可以放入tab的shown.bs.tab事件中,如果是指定的tab页,则重新初始化一个uploader。
这同时引入了一个限制,就是必须把uploader初始化动作写为一个函数,否则将导致一个超长的js文件。
-
$('a[data-toggle="tab"]').on('shown.bs.tab',function(e){
-
var target =e.target.toString(); //$(e.target)[0].hash;
-
-
if( target.indexOf('product_gallary')>0 ){
-
-
initUpload();
-
}
-
})
其他说明:
1、e.target返回的是DOM对象;
2、对于bootstarp的tab,可以简单地用jquery的hash属性,这个属性在jquery的各种手册中都不有描述,指的是url的#id部分。
----end-----
阅读(10130) | 评论(0) | 转发(1) |