Tôi chưa có tiện ích mở rộng / plugin phù hợp nào. Tôi đã thử sử dụng tập lệnh người dùng sau với TamperMonkey trong Chrome. Nó đang làm việc rất tốt. Chặn tất cả các gifs (bao gồm cả ajax gifs) trong trang web 9gag.com. Vì một số lý do, ajax gifs trong google + không bị chặn (điều tra điều đó). Rất cám ơn Synetec vì sự giúp đỡ, nỗ lực và mã của anh ấy. Đây là tập lệnh người dùng (hầu hết các tập lệnh được sao chép từ tập lệnh người dùng của Synetec ):
// ==UserScript==
// @name gifBlock
// @namespace http://i.have.no.homepage/
// @version 0.1
// @description Stops downloading gif images (including ajax gifs) in 9gag.com (or any page if you just fix the @match rule)
// @match http://*.9gag.com
// @copyright 2012+, Nobody
// ==/UserScript==
function tamperMonkeyWrap()
{
function log(m)
{
console.log(m);
}
function jQWrap($)
{
log("Extension execution begins...");
function blockGifs()
{
$('img').each(function() {
var $img = $(this),
src = $img.attr('src'),
w = $img.width(),
h = $img.height(),
cursor = $img.css('cursor'),
parts = src.split('.'),
ext = parts[parts.length-1];
if ($.trim(ext.toLowerCase()) != "gif")
return;
$img.attr('data-imgurl', src);
$img.data('cursor', cursor);
$img.css('cursor', 'pointer');
$img.addClass('gif-blocked');
h = h > 100? h : 100;
$img.attr('src', '//ipsumimage.appspot.com/'+w+'x'+h+'?l=Gif (Click)');
});
}
function interceptAjax () {
$('body').ajaxComplete(
function (event, requestData)
{
log("Blocking GIF [Ajax] ...");
blockGifs();
}
);
}
$(document).ready(function() {
log("Blocking GIF [Ready]....");
blockGifs();
interceptAjax();
$(document).on('click', 'img.gif-blocked', function(ev) {
var $img = $(this),
url = $img.attr('data-imgurl'),
cursor = $img.data('cursor');
$img.attr('src', url);
$img.css('cursor', cursor);
$img.removeClass('gif-blocked');
ev.preventDefault();
return false;
});
});
log("Document is not ready yet. trying block just in case it takes time to be _ready_ (google+).");
blockGifs();
}
if (window.jQuery == undefined)
{
log("Loading jQuery...");
var scriptTag = document.createElement('script');
scriptTag.src = "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js";
scriptTag.onload = function(){
log("jQuery loaded.");
window.jQuery = jQuery;
jQWrap(jQuery);
};
document.getElementsByTagName('head')[0].appendChild(scriptTag);
}
else
{
log("jQuery already included in the page");
jQWrap(window.jQuery);
}
}
var scriptTag = document.createElement('script');
scriptTag.text = '(' + tamperMonkeyWrap.toString() + ')();';
document.getElementsByTagName('head')[0].appendChild(scriptTag);
Hiện nay:
- Cài đặt TamperMonkey
- Đi đến bảng điều khiển
- Nhấp vào 'tập lệnh mới'
- Dán đoạn mã trên
- Lưu và xem nếu nó hoạt động. (chỉ hoạt động trên 9gag.com bây giờ. Nhưng bạn có thể thay đổi các
@match
chỉ thị để phù hợp với bất kỳ trang web nào bạn muốn. sử dụng @match http://*/*
để làm việc cho tất cả các trang web (http). Thay đổi để https
cho bất kỳ trang web http bảo đảm, ví dụ như google +)
.gif
các tệp, nhưng nếu bạn chỉ muốn chặn các tệp hoạt hình.gif
, thì tiện ích mở rộng vẫn phải tải xuống bất kỳ.gif
tệp nào được nhúng trong trang để xác định xem chúng có hoạt hình hay không. Đặt cược tốt nhất của bạn là chặn tất cả các GIF. (Tôi chỉ nghĩ ra một ý tưởng có thể hoạt động tốt, nhưng tôi không nghĩ rằng nó đã được thực hiện. Nếu tôi có thời gian, tôi sẽ cố gắng làm một cái gì đó trong trường hợp không ai biết về một giải pháp hiện có.)