我在我的javascript文件中编写了以下代码:
$( document ).ready(function() {
$("#fbhtmlImage .image_thumb").live('click',function(){ $(this).parent().find("label").click(); });
$("#dropboxImageContent .image_thumb").live('click',function(){ $(this).parent().find("label").click(); });
$("#instagramFrm .image_thumb").live('click',function(){ $(this).parent().find("label").click(); });
});
它适用于所有浏览器,包括Safari for Mac。但是相同的代码在Safari for Windows中不起作用。
我也试过了,
$( document ).ready(function() {
$(document).on("click","#fbhtmlImage .image_thumb",function() { $(this).parent().find("label").click(); });
$(document).on("click","#DropboxContent .image_thumb",function() { $(this).parent().find("label").click(); });
$(document).on("click","#instagramFrm .image_thumb",function() { $(this).parent().find("label").click(); });
});
答案 0 :(得分:-1)
例如。
$( document ).ready(function() {
$("#fbhtmlImage .image_thumb").on('click',function(){
$(this).parent().find("label").click(); }); //For Facebook
});
希望它可以正常工作,因为.live()
已被弃用。
答案 1 :(得分:-1)
我已通过以下代码解决了这个问题:
$( document ).ready(function() {
var os = navigator.platform;
os = os.toLowerCase();
if(os.indexOf('win') >= 0 && jQuery.browser.safari){
//For Windows Safari
$(document).on("click","#fbhtmlImage .image_thumb",function() { $(this).parent().find("input").click(); });
$(document).on("click","#DropboxContent .image_thumb",function() { $(this).parent().find("input").click(); });
$(document).on("click","#instagramFrm .image_thumb",function() { $(this).parent().find("input").click(); });
}
else{
$(document).on("click","#fbhtmlImage .image_thumb",function() { $(this).parent().find("label").click(); });
$(document).on("click","#DropboxContent .image_thumb",function() { $(this).parent().find("label").click(); });
$(document).on("click","#instagramFrm .image_thumb",function() { $(this).parent().find("label").click(); });
}
});