[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Скрипт локального действия
Владимир55
Имеется скрипт, очищающий атрибуты графических изображений:
 <script type="text/javascript"> 
$(document).ready(function(){
$('img').removeAttr('width').removeAttr('height');
});
</script>


Действие этого скрипта распространяется на все изображение, находящиеся на данной странице. Можно ли его видоизменить таким образом, чтобы он действовал только на img, размещенные внутри конкретного дива, например только внутри
 <div id="zero">   
Invis1ble
$('#zero > img').removeAttr('width height');

а вообще, непонятно, зачем тут js
это делается успешно с помощью css
#zero > img {
width: auto;
height: auto;
}


_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Владимир55
Цитата (Invis1ble @ 24.12.2013 - 10:46)
а вообще, непонятно, зачем тут js
это делается успешно с помощью css

Нюанс в том, что коды я получаю из визуального редактора, который картинки выдает только так и никак иначе:
<img border="0" src="/709.jpg" width="72" height="90">


Чтобы избавиться от жестко заданных размеров, приходится использовать этот скрипт.

А вообще, в идеале, я пытаюсь сделать вот что: с помощью скрипта превратить численные значения ширины в количество процентов, а высоту поставить авто. Чтобы для браузера была директива, аналогичная вот такому коду:
<img border="0" src="/709.jpg" style="width:72%;height:auto;">

Можете подсказать, как это сделать, каким скриптом?
sign63
Пример: Задать диву с id = 'test' ширину 50%:
$('#test').css('width','50%');


_____________
user posted image
Владимир55
Цитата (Invis1ble @ 24.12.2013 - 10:46)
$('#zero > img').removeAttr('width height');


Почему-то сбрасывается только ширина. А высота воспринимается браузером как будто этого скрипта и вообще нет.

Высота не сбрасывается, даже если сделать так:
$('#zero > img').removeAttr('width');
$('#zero > img').removeAttr('height');

sign63
может быть там надо как то разделить?

Цитата

$('#zero > img').removeAttr('width');
$('#zero > img').removeAttr('height');


а так пойдет?


_____________
user posted image
Владимир55
Мы с Вами синхронно мыслим - на секунду раньше я внес дополнение в предыдущий пост - И так тоже сброс по вертикали не работает!
Invis1ble
Цитата
'width height'

это синтаксис для jQuery >= 1.7

Цитата
$('#zero > img').removeAttr('width');
$('#zero > img').removeAttr('height');

плохой пример, лучше использовать цепочку вызовов



Спустя 2 минуты, 5 секунд Invis1ble написал(а):
Цитата
И так тоже сброс по вертикали не работает!

должен убираться атрибут height, а "сброс" - это уже следствие, причем не гарантированное, т.к. height может быть установлен дополнительно в других местах

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Владимир55
Такую цепочку вызовов:
$('#zero > img').removeAttr('width').removeAttr('height'); 


Здесь тоже действие атрибута height остается ...
Invis1ble
Цитата
#zero > 'img'

что это? оО У тебя тут синтаксическая ошибка, вообще-то

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Владимир55
Ошибся, когда писал пост. В коде гладко.
Владимир55
Вроде бы, работает вот так:
$('#zero img').removeAttr('width').removeAttr('height');

Но корректна ли такая запись?
sign63
Цитата
корректна


_____________
user posted image
Invis1ble
Цитата (Владимир55 @ 24.12.2013 - 13:51)
Вроде бы, работает вот так:
$('#zero img').removeAttr('width').removeAttr('height');

Но корректна ли такая запись?

да
почитай про селекторы и их отличия
чем отличается "selector1 selector 2" от "selector1 > selector2"
я тебе дал решение с учетом твоей фразы "чтобы он действовал только на img, размещенные внутри конкретного дива"

PS. Ты постоянно создаешь новые темы с простейшими вопросами, вместо того, чтобы самостоятельно изучить основы. Так из тебя профи никогда не выйдет.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Владимир55
Цитата (Invis1ble @ 24.12.2013 - 11:57)
PS. Ты постоянно создаешь новые темы с простейшими вопросами, вместо того, чтобы самостоятельно изучить основы. Так из тебя профи никогда не выйдет.

Я стараюсь, но пока что получается так. С JS особенно проблемно. Иногда упираешься как в стену...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.