Kéo tóc ra. Các phương thức jQuery đơn giản không hoạt động trong Safari 6.Phương pháp jQuery không hoạt động trong Safari 6
Khối mã sau hoạt động trong tất cả các trình duyệt khác mà tôi đã thử nghiệm ngoại trừ Safari 6. Nó hoạt động tốt trong Safari 5 trở lên, tốt trong Firefox, tốt trong IE. Nó cũng hoạt động tốt trong Chrome.
Cảnh báo không bật lên trong Safari 6, do đó chức năng vẫn được kích hoạt nhưng không có gì xảy ra với bất kỳ phương pháp nào trong số 3 phương pháp khác.
----- UPDATE ----- Sau khi thử nghiệm thêm trên một số máy ... Tôi đã phát hiện thấy nó không hoạt động trong Safari 6 trong Mac OSX 10.8. Mã hoạt động tốt trong cùng một phiên bản của Safari trong OSX 10.7. --------------------
Tôi đang chạy jQuery 1.8.3. và trang của tôi xác nhận là HTML5.
HTML:
<div id="fileUploadFormContainer">
<form id="fileUploadForm" action="/upload/do_upload/<?=$row->project_id?>" method="post" enctype="multipart/form-data" >
<fieldset>
<label for="userfile">Attach a file</label>
<input type="file" name="userfile" id="userfile" /><br />
<input type="submit" id="fileUploadSubmit" value="Upload file" />
<img class="loadingBar" id="fileUploadLoadingBar" src="/images/indicators/ajax-loader.gif" alt="" />
</fieldset>
</form>
</div><!-- end fileUploadFormContainer -->
CSS:
.loadingBar {
display: none;
}
JavaScript:
$(function(){
// Submit Buttons
$('#fileUploadSubmit').click(function()
{
$('#fileUploadSubmit').attr('value', 'Uploading');
$('#fileUploadSubmit').fadeTo('fast',0.6);
$('#fileUploadLoadingBar').fadeIn('fast');
alert('Finished');
});
});
Bạn có gặp bất kỳ lỗi nào không? –
Điều kỳ lạ duy nhất tôi thấy trong những dòng này là '$ (...). Attr ('value', 'Uploading');'. Thông thường bạn sẽ sử dụng '$ (...). Val ('Tải lên');' (hoặc bạn có thể sử dụng 'prop'). Nhưng tôi đặt cược 'attr' làm việc dù sao, và trong mọi trường hợp, điều đó không giải thích sự mất dần ... –
Thật tuyệt khi thấy một câu hỏi ** được hỏi ** từ một thành viên SO mới. Đẹp nhất! –