ImagePref - це розширення, яке дозволяє перемикати показ зображення без перезавантаження, хоча на домашній сторінці зазначається, що він може не працювати в певних (безіменних) обставинах. Я помітив, що він працює повільно, якщо є багато відкритих вкладок.
Якщо ви готові прийняти компроміси, ось ще одна закладка, яка робить деякі з того, що ви просите:
javascript:(function(){function%20toggleImages(root){var%20stylesheet,stylesheetId='bookmarklet-hide-image-stylesheet',rules='*%20{%20background-image:%20none%20!important;%20}%20img,%20input[type=image],%20object[type^=image]%20{%20visibility:%20hidden%20!important;%20}',tagNames=['frame','iframe'],elements,i,j;stylesheet=root.getElementById(stylesheetId);if(stylesheet){stylesheet.parentNode.removeChild(stylesheet);}else{stylesheet=root.createElement('style');stylesheet.type='text/css';stylesheet.id=stylesheetId;if(stylesheet.styleSheet){stylesheet.styleSheet.cssText=rules;}else{stylesheet.appendChild(root.createTextNode(rules));}root.getElementsByTagName('head')[0].appendChild(stylesheet);}for(i=0;i<tagNames.length;i+=1){for(j=0,elements=root.getElementsByTagName(tagNames[i]);j<elements.length;j+=1){toggleImages(elements[j].contentDocument);}}}toggleImages(document);}());
Він намагається приховати і UNHIDE фонових зображень, <img>
тег і <input>
і <object>
тег з type="image"
, але є ще багато дивніше способи доставки зображення не підбере на, як <embed>
і <object>
s з <param>
тегами. Він не працюватиме в доменах через заходи безпеки веб-переглядача (зазвичай це помітно, коли є оголошення <iframes>
), і його можна перекрити таблицею стилів користувача або клобірувати, якщо сторінка використовує !important
.
Читальний вихідний код для зацікавлених:
(function () {
function toggleImages(root) {
var stylesheet,
stylesheetId = 'bookmarklet-hide-image-stylesheet',
rules = '* { background-image: none !important; } img, input[type=image], object[type^=image] { visibility: hidden !important; }',
tagNames = ['frame', 'iframe'],
elements,
i,
j;
stylesheet = root.getElementById(stylesheetId);
if (stylesheet) {
stylesheet.parentNode.removeChild(stylesheet);
} else {
stylesheet = root.createElement('style');
stylesheet.type = 'text/css';
stylesheet.id = stylesheetId;
if (stylesheet.styleSheet) {
stylesheet.styleSheet.cssText = rules;
} else {
stylesheet.appendChild(root.createTextNode(rules));
}
root.getElementsByTagName('head')[0].appendChild(stylesheet);
}
for (i = 0; i < tagNames.length; i += 1) {
for (j = 0, elements = root.getElementsByTagName(tagNames[i]); j < elements.length; j += 1) {
toggleImages(elements[j].contentDocument);
}
}
}
toggleImages(document);
}());
background-color
разом ізbackground-image
.background
Властивість представляє собою скорочене і браузер встановлює кожну частину її, томуbackground-image: none !important
повинен вистачити.