这个问题与其他问题有点不同。我遇到了与jQuery AjaxUpload 类似的问题,必须单击两次按钮吗?但我设法用我的解决方法解决了这个问题。按钮来得很完美。但现在的问题是,当我从按钮的顶部或左侧拖动鼠标后单击该按钮时,它不起作用,但如果我从另一侧拖动鼠标,它工作正常。简而言之,当从顶部到达该按钮时,按钮会悬停,而不是 ajax 上传创建的隐藏文件选择器。
在第一张图片中,我从按钮的一侧拿了鼠标指针,然后我可以选择文件。但如其他图像所示,我从按钮顶部取出鼠标指针,按钮悬停。
这是我的按钮代码:
<input type="button" value="Upload Image" class="imgUploadBtn" />
我的 JS 片段:
function uploadAndGetImgUrl(tsource,status) {
new AjaxUpload(tsource,{
action: 'imageUpload.php',
name: 'uploadfile',
data: {},
onSubmit: function(file, ext){
if (! (ext && /^(jpg|png|jpeg|gif)$/.test(ext))){
// extension is not allowed
status.text('Only Images are Allowed');
return false;
}
status.text('Uploading...');
},
onComplete: function(file, response){
//On completion clear the status
status.text('');
$('#idSpclImgLink').val(response);
$('#idImgLink').val(response);
}
});
}
$(document).live("imgAttach",function() {
alert("Want something Added");
uploadAndGetImgUrl($('.imgUploadBtn'),$('#idStatus'));
});
我检查了 ajaxupload.3.5.js,但发现它在悬停时做了一些处理,并使用左和上偏移来保持悬停效果。但我还不能解决这个问题。知道为什么会这样吗?
PS:我用铬。我还检查了 Firefox 和相同的行为。