[Hỏi đáp] Trình xem ảnh fancybox

  Bài viết hay nhất1
Cho hỏi có bạn nào còn lưu trữ đoạn js của trình xem ảnh fancybox hay không? nếu còn thì cho mình xin với. Tiện thể nhờ mọi người xem giúp, mình xóa link của trang hotro.4forum... hôm bữa nhưng đoạn code sau vẫn không hiệu lực đối với những hình ảnh đã bị die:

Code:
$(function(){
   $("img").on("error", function(){
      $(this).attr({
         alt: this.src,
         src: "http://i.imgur.com/LC55jpd.jpg"
      });
   });
});

Rất mong mọi người giúp đỡ.
  Bài viết hay nhất2
Code chạy tốt mà bạn?

http://jsfiddle.net/baivong/r1vxqpbo/embedded/result,js,html/
  Bài viết hay nhất3
Có thể là bạn bị xung đột với 1 JS Xem Ảnh , khả năng rất cao là mình đoán bạn tải phần ví dụ của Fancybox về đặt ở đâu đó ? Vì vài hàm JS này có thể vô hiệu chức năng hình lỗi .

Mình đoán như vậy vì trong View topic của bạn sắp xếp rất lung tung Ví dụ như :

Code:
$(function () {$.ajax({url: "/feed/?f=125",type: "GET",dataType: "html",success: function (a) {$(".post:first").after('<div class="cmtblog4 fb-comments fb_iframe_widget" data-href="http://www.congdongotakuviet.com/t17245-pic-anh-chup-tai-le-hoi-mua-he-manga-festival-2016-uoc-to-chuc-tai-tp-hcm-293031-7-2016" data-numposts="20" data-width="100%" data-colorscheme="light" style="display: block;" fb-xfbml-state="rendered"></div><div class="cugchuyenmuc"><div class="cungchuyenmucname"><i class="fa fa-star-o" aria-hidden="true"></i>Topic cùng chuyên mục:</div><ul id="cungchuyenmuc" style="overflow: hidden; max-height: 225px; margin-top: -3px;"><div style="height:1px;border-bottom: 0px dashed #ababab;margin:0px 0px 5px -30px;display:none; width: 120%;"></div></ul></div>');$(a).find("item:lt(21)").each(function () {$("#cungchuyenmuc div").before('<li><span><a href="' + $(this).find("guid").html() + '">' + $(this).find("title").html() + "</a></span></li>")})},error: function (a) {console.error(a)}});$('.pun div[style="background-color:#ffffff;"] .post-entry').before('')});

Code này là Comment Facebook nhưng mình đoán bạn xóa 1 thành phần quan trong của head mặc định nên nó không hiển thị , nên thành ra đoạn code này thừa .

Ngoài ra có đoạn Js bị chết bạn vẫn để nguyên trong đó http://cdn.rawgit.com/baivong/fmvi/master/js/19578.js cùng với 1 trình xem ảnh thừa http://www.congdongotakuviet.com/99919.js .

Sơ qua đã như vậy rồi , có thời gian bạn nên nhổ cỏ tận gốc , nếu không lỗi chồng lên lỗi là chuyện đương nhiên .
  Bài viết hay nhất4

loving9you wrote:Có thể là bạn bị xung đột với 1 JS Xem Ảnh , khả năng rất cao là mình đoán bạn tải phần ví dụ của Fancybox về đặt ở đâu đó ? Vì vài hàm JS này có thể vô hiệu chức năng hình lỗi .

Mình đoán như vậy vì trong View topic của bạn sắp xếp rất lung tung Ví dụ như :

Code:
$(function () {$.ajax({url: "/feed/?f=125",type: "GET",dataType: "html",success: function (a) {$(".post:first").after('<div class="cmtblog4 fb-comments fb_iframe_widget" data-href="http://www.congdongotakuviet.com/t17245-pic-anh-chup-tai-le-hoi-mua-he-manga-festival-2016-uoc-to-chuc-tai-tp-hcm-293031-7-2016" data-numposts="20" data-width="100%" data-colorscheme="light" style="display: block;" fb-xfbml-state="rendered"></div><div class="cugchuyenmuc"><div class="cungchuyenmucname"><i class="fa fa-star-o" aria-hidden="true"></i>Topic cùng chuyên mục:</div><ul id="cungchuyenmuc" style="overflow: hidden; max-height: 225px; margin-top: -3px;"><div style="height:1px;border-bottom: 0px dashed #ababab;margin:0px 0px 5px -30px;display:none; width: 120%;"></div></ul></div>');$(a).find("item:lt(21)").each(function () {$("#cungchuyenmuc div").before('<li><span><a href="' + $(this).find("guid").html() + '">' + $(this).find("title").html() + "</a></span></li>")})},error: function (a) {console.error(a)}});$('.pun div[style="background-color:#ffffff;"] .post-entry').before('')});

Code này là Comment Facebook nhưng mình đoán bạn xóa 1 thành phần quan trong của head mặc định nên nó không hiển thị , nên thành ra đoạn code này thừa .

Ngoài ra có đoạn Js bị chết bạn vẫn để nguyên trong đó http://cdn.rawgit.com/baivong/fmvi/master/js/19578.js cùng với 1 trình xem ảnh thừa http://www.congdongotakuviet.com/99919.js .

Sơ qua đã như vậy rồi , có thời gian bạn nên nhổ cỏ tận gốc , nếu không lỗi chồng lên lỗi là chuyện đương nhiên .

Phần js của cái comment facebook bị mình vô hiệu hóa rồi:

Code:
<!-- fb-comment
<script>
  window.fbAsyncInit = function() {
    ...
  };

  (function(d, s, id){
     ...
   }(document, 'script', 'facebook-jssdk'));
</script> -->
<!-- fb-comment -->

Cả cái link http://cdn.rawgit.com/baivong/fmvi/master/js/19578.js cũng bị mình vô hiệu hóa như thế. Mình có lưu trữ 1 số đoạn js của fancybox trong phần host script của forum nhưng mình không tick vào mục nào của phần placement hết. Còn js trong http://www.congdongotakuviet.com/99919.js là trình xem ảnh fancybox hiện tại mà forum mình đang dùng :D Mặc dù mình xóa những gì bạn nghi vấn (kể cả việc vô hiệu hóa trình xem ảnh hiện tại của forum) nhưng đoạn js thay thế ảnh lỗi kia vẫn không hoạt động, không hiểu tại sao.

Rất cảm ơn về nhận xét và lời khuyên của bạn :D
  Bài viết hay nhất5
Thật ra bạn là chuyên gia của chính bạn rồi Forumotion đã có chức năng chạy thử thì nói thật chẳng sợ cái lỗi nào cả dù phức tạp đến đâu , bạn thử vô hiệu từng JS xem có tình trạng như vậy không .

Thử chạy từng View mặc định rồi từ đó bạn có thể suy ra nguyên nhân từ đâu , phương pháp này là cách fix lỗi 100% 1 cách nhanh chóng - dễ dàng cho người chuyên hoặc không chuyên .
  Bài viết hay nhất6

loving9you wrote:Thật ra bạn là chuyên gia của chính bạn rồi Forumotion đã có chức năng chạy thử thì nói thật chẳng sợ cái lỗi nào cả dù phức tạp đến đâu , bạn thử vô hiệu từng JS xem có tình trạng như vậy không .

Thử chạy từng View mặc định rồi từ đó bạn có thể suy ra nguyên nhân từ đâu , phương pháp này là cách fix lỗi 100% 1 cách nhanh chóng - dễ dàng cho người chuyên hoặc không chuyên .
Rất cảm ơn vì sự giúp đỡ. ^^
  Bài viết hay nhất7

loving9you wrote:Thật ra bạn là chuyên gia của chính bạn rồi Forumotion đã có chức năng chạy thử thì nói thật chẳng sợ cái lỗi nào cả dù phức tạp đến đâu , bạn thử vô hiệu từng JS xem có tình trạng như vậy không .

Thử chạy từng View mặc định rồi từ đó bạn có thể suy ra nguyên nhân từ đâu , phương pháp này là cách fix lỗi 100% 1 cách nhanh chóng - dễ dàng cho người chuyên hoặc không chuyên .

Sửa kiểu bạn mò từng cái có mà điên. Debug sẵn có của trình duyệt là đủ để biết nó lổi từ đâu rồi.

Thật ra code trên không phải không chạy, nó chạy đó chứ. Vì những hình ảnh của bạn nêu trên là do lỗi server thôi. Do đó nó vẫn tính là đã tải được rồi. Do đó hàm on("error") sẽ không chạy.

Bạn thử code này xem.

Code:

function checkimg(a,b){var c=new XMLHttpRequest;c.responseType="blob",c.open("GET",a),c.onreadystatechange=function(a){4===c.readyState&&(200===c.status||b(!1))},c.send()}
$(function(){
  $(".postbody img").each(function(){
    var a=$(this);
    checkimg(this.src,function(b){
      0==b&&a.attr("src","http://i.imgur.com/LC55jpd.jpg")
    })
  })
});
  Bài viết hay nhất8
@markai30 Sao bây giờ mới chịu xuất hiện để cứu độ chúng sanh vậy trời :)) cảm ơn Markai nhiều nhé
Cảm ơn @loving9you với @Zzbaivong luôn. Mình xin dừng topic này tại đây vì hình như nó đi lạc đề mất rồi :D
  Bài viết hay nhất9
anhdaodaica1 wrote:@markai30 Sao bây giờ mới chịu xuất hiện để cứu độ chúng sanh vậy trời :)) cảm ơn Markai nhiều nhé
Cảm ơn @loving9you với @Zzbaivong luôn. Mình xin dừng topic này tại đây vì hình như nó đi lạc đề mất rồi :D

Không có gì. Thật ra code trên sẽ tải lại ảnh để kiểm tra, do đó nếu những ảnh không bị hư nó cũng sẽ tải lại. Lúc nãy viết vội quá không đặt điều kiện cho nó với lại nó dài dòng quá, nên viết lại. Bạn update lại nhé. Nhớ xóa hết code cũ.

Code:
$(function(){
  $(".postbody img").each(function(){
    if (!this.complete || typeof this.naturalWidth == "undefined" || this.naturalWidth == 0) {
      this.src = 'http://i.imgur.com/LC55jpd.jpg';
    }
  })
});
  Bài viết hay nhất10
@markai30 Cảm ơn nhiều nhé, mình đã update lại rồi :D
  Bài viết hay nhất11
anhdaodaica1 wrote:@markai30 Cảm ơn nhiều nhé, mình đã update lại rồi :D

Trời. Comment nhanh thế, coi lại đi, tại mình vừa sửa lại ^^.
  Bài viết hay nhất12

markai30 wrote:
anhdaodaica1 wrote:@markai30 Cảm ơn nhiều nhé, mình đã update lại rồi :D

Trời. Comment nhanh thế, coi lại đi, tại mình vừa sửa lại ^^.
Có người dành thời gian ngồi giúp mình nên mình ngồi chờ luôn :D
You cannot reply to topics in this forum