Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.07.2011, 13:02
Новичок на форуме
Отправить личное сообщение для yarosh Посмотреть профиль Найти все сообщения от yarosh
 
Регистрация: 29.07.2011
Сообщений: 9

Предотвращение загрузки картинок на странице
Необходимо сделать чтобы картинки которые находятся на странице не загружались браузером. В идеале это должно касаться только тех картинок которые расположены на других сайтах. Пробовал отключить их через смену атрибута src но ничего не получилось:

<script type="text/javascript">
	var imgsrc = document.getElementByTagName('img');
for (var i = 0; i < imgsrc.lenth; i++)
{
	//imgsrc[i].src='x';
	imgsrc[i].setAttribute('src', '');
}
</script>


ЗЫ Где вставлять такой код? в <head>, после <body> или перед </body>?
Ответить с цитированием
  #2 (permalink)  
Старый 29.07.2011, 13:04
Профессор
Отправить личное сообщение для розовый слоник Посмотреть профиль Найти все сообщения от розовый слоник
 
Регистрация: 17.10.2009
Сообщений: 258

setAttribute - лучше не использовать как по мне

вот так должно работать
imgsrc[i].src = '';

вставить все равно куда можно код будет работать везде. но если вставите в хед то нужно сделать window.onload так как загрузка страницы происходит синхронно. По этому как только браузер дойдет до вашего скрипта боди еще будет пусто и скрипт не отработает так как length будет равно нулю.
но можете скрипт вставить вконец боде и тогда не потребуется ждать загрузки страницы

Последний раз редактировалось розовый слоник, 29.07.2011 в 13:08.
Ответить с цитированием
  #3 (permalink)  
Старый 29.07.2011, 13:07
Новичок на форуме
Отправить личное сообщение для yarosh Посмотреть профиль Найти все сообщения от yarosh
 
Регистрация: 29.07.2011
Сообщений: 9

Сообщение от розовый слоник Посмотреть сообщение
setAttribute - лучше не использовать как по мне

вот так должно работать
imgsrc[i].src = '';
Так тоже пробовал не хочет работать.
Я вставляю после <body>. Может надо где-то в другом месте?
Ответить с цитированием
  #4 (permalink)  
Старый 29.07.2011, 13:10
Профессор
Отправить личное сообщение для розовый слоник Посмотреть профиль Найти все сообщения от розовый слоник
 
Регистрация: 17.10.2009
Сообщений: 258

поставте тогда debugger и проверьте что у вас получается) и сразу все будет ясно) и вообще учитесь отлаживать скрипты
Ответить с цитированием
  #5 (permalink)  
Старый 29.07.2011, 13:17
Новичок на форуме
Отправить личное сообщение для yarosh Посмотреть профиль Найти все сообщения от yarosh
 
Регистрация: 29.07.2011
Сообщений: 9

<script type="text/javascript">
	var imgsrc = document.getElementsByTagName('img');
for (var i = 0; i < imgsrc.lenth; i++)
{
	imgsrc[i].src = '';
	//imgsrc[i].setAttribute('src', '');
}
</script>

</body>
</html>


какой debugger поставить?

В консоле JAVAscript (Google Chrome) не показывает ошибку
Ответить с цитированием
  #6 (permalink)  
Старый 29.07.2011, 13:26
Профессор
Отправить личное сообщение для розовый слоник Посмотреть профиль Найти все сообщения от розовый слоник
 
Регистрация: 17.10.2009
Сообщений: 258

ну да она и не будет показыть ошибку потому что var imgsrc = [] то есть пустой массив)
я конечно не проверял но в этом уверен
поставте слово debugger после объявление переменной imgsrc и посмотрите чему она равна
Ответить с цитированием
  #7 (permalink)  
Старый 29.07.2011, 13:28
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

вставлять перед закрывающим body

как я понял, вы так поставили

<body>
*!*<script></script>*/!*

....
</body>
Ответить с цитированием
  #8 (permalink)  
Старый 29.07.2011, 14:32
Новичок на форуме
Отправить личное сообщение для yarosh Посмотреть профиль Найти все сообщения от yarosh
 
Регистрация: 29.07.2011
Сообщений: 9

Вставлен перед </body>
<script type="text/javascript">
	var imgsrc = document.getElementsByTagName('img');
	debugger;
for (var i = 0; i < imgsrc.lenth; i++)
{
	imgsrc[i].src = '';
	//imgsrc[i].setAttribute('src', '');
}
</script>


В консоле показал
Цитата:
imgsrc: NodeList[294]
Ответить с цитированием
  #9 (permalink)  
Старый 29.07.2011, 15:30
Новичок на форуме
Отправить личное сообщение для yarosh Посмотреть профиль Найти все сообщения от yarosh
 
Регистрация: 29.07.2011
Сообщений: 9

С заменой уже разобрался
а как выделить src которые идут на сторонние ресурсы и заменить только их. Как я понимаю то все картинки находящиеся на других сайтах будут начинаться в src с "http://" но при этом будут отличаться началом от "http://site.com/"

PS
Странно похоже несмотря на то что заменил все ссылки картинок, картинки похоже всё равно загружаются браузером, а надо добиться чтобы этого небыло, но как это сделать?
Ответить с цитированием
  #10 (permalink)  
Старый 29.07.2011, 16:23
Новичок на форуме
Отправить личное сообщение для yarosh Посмотреть профиль Найти все сообщения от yarosh
 
Регистрация: 29.07.2011
Сообщений: 9

Со скриптом уже разобрался, но он не работает так как хотелось бы.
Картинки внешние меняет, НО браузер всё равно подгружает картинки которые были зменены скриптом.

Кто нибудь знает как можно запретить загрузку картинок браузеру через JAVAscript?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отключение картинок на странице AgRy Events/DOM/Window 13 18.01.2021 08:37
Авто размер всех картинок на странице big_jump Общие вопросы Javascript 15 04.09.2011 12:39
Смена картинок в зависимости от положения курсора мыши antonio_vrn Events/DOM/Window 3 31.05.2011 22:07
Последовательная пред-загрузка картинок Paska AJAX и COMET 1 09.03.2011 12:10
Не выполняется скрипт на подгружаемой странице AlThar ExtJS 1 21.01.2011 15:10