ОсновноеRadiotalkПользовательское
MPCHAT - CMS хостинг чатов для профессионалов
90   •   Посмотреть все темы

как прописать стиль для картинки в чате в зависимости от размера?

 

1163
Денис @Анатолич
Загузка картинок в моем чате работает так.

/* Функция изменения загружаемой картинки */
var id_img = 0;
function imgminimum(obj)
{var imgmax = 90; // максимальный размер картинки
var h = obj.height;
var w = obj.width;
if (h<90&&w<500) {return;}
if (h>imgmax||w>imgmax){if (h>w) {obj.height=imgmax}else {obj.height=imgmax}};
if (!obj.id){var scr=document.getElementById("leftdiv");
scr.scrollTop=scr.scrollHeight;
obj.id=id_img++;}}



if (text.split('src=tmp').length>1) {text=text.replace(/.br..img.src.(tmp.(.+\.(gif|jpg|jpeg|bmp|png|tif|tiff))).border.0..br./igm, "<img class=expando style='описание стиля' onload=parent.imgminimum(this) src=$1 border=0 onclick='show_img(this)>");}

Можно ли расширить функцию изменения размеров?

Нужно значение стиля CSS передать в переменную.
Если высота или ширина картинки меньше 50 то стиль бы оставался пустым.
А если больше 50 то добавить описание стиля.

1007
BETEPAH @BETEPAH
Зачем это все? Уберите скрипт и пропишите стилями max-width: 500px; max-height: 90px.

20090
Dimitry @Dimitry
Да, это способы из 90х, давно пора делать стилями как и озвучил ВЕТЕРАН)

1163
Денис @Анатолич
ну не из 90х а из нулевых. скрипт же на форуме я брал. От Ридза вроде.
Впрочем max-height и тогда был. очень странно, что он не стал его использовать.
действительно так проще и наверное эффективнее.
Но вопрос остался актуальным. Мне нужно картинкам с разными размерами, прописать Разные стили.
Или не стилями а скриптами. С картинками меньше 50 пикселов ничего не делать а картинкам больше 50 пикс. добавить float: right;
Можно ли как то допилить функцию?

Отредактировано Анатолич - 22.01.2015
2970
удалён @Foggy
после var w = obj.width; пиши
if (h > 50 || w > 50) {
obj.styleFloat = 'right'; // ie
obj.cssFloat = 'right';
}

1163
Денис @Анатолич
Foggy, почему то не работает 🙁

1007
BETEPAH @BETEPAH
.style.float = 'right'

20090
Dimitry @Dimitry
Прикол в том что если гуглить то правильный вариант именно у Foggy, причём во всех источниках так...
Но логически правильно как у ВЕТЕРАНА...
не понятно где собака зарыта)

2615
Сергей @Pegass
не правильно у обоих)))

obj.style.styleFloat = 'right'; // ie
obj.style.cssFloat = 'right';

20090
Dimitry @Dimitry
просто судя по строкам
var h = obj.height;
var w = obj.width;

думал это obj уже и есть стили объекта)

Но это видимо тоже работает как минимум в хроме...

.style.float = 'right'

1163
Денис @Анатолич
простите а есть какой то справочник, где можно посмотреть все Яваскрипт команды, аналогичные стилям.
не получается нагуглить у меня.
ну то бишь
float: right; в CSS = style.cssFloat = 'right'; в яваскрипт

а если мне нужно max-width: 320px; для obj прописать, как код выглядеть будет?

20090
Dimitry @Dimitry
Обычно если стоит тире то тире не пишется а пишется большая буква
maxWidth='320px'

2970
удалён @Foggy
Анатолич, ты не поверишь. они на страницах htmlbook.ru есть. Я про float ********** и взял. только я почему-то тоже был уверен, что obj это стили уже)))

Сам не имею вредной привычки инлайн стили вешать. Only классы.

1163
Денис @Анатолич
Foggy, ну в той ссылке что ты кинул, только стили CSS описаны.
Их найти не проблема. Я думал может есть какой то справочник по командам для яваскрипт, которые управляют стилями.
Дима выше подсказал как стили в команды переделать. Но как то все не вполне конкретно.
хотелось бы ознакомится именно со списком доступных команд, именно на яваскрипт, чтобы корректно работали.

конкретно по моему вопросу 3 подсказки кинули. одна из них не рабочая. вторая невалидная.
и только третья полностью правильная. в общем путаница какая то.

2970
удалён @Foggy
На той странице есть про js. Нажми ctrl+f на странице и впиши "Объектная модель". И на всех страницах css свойств (у которых есть управление из js, конечно) есть в описании блок с таким названием.

Желание обучаться это здорово для посетителя этого форума 😁
Скажу сразу: если нужно только html модифицировать, то проще попросту гуглить зачастую. Если изучать конкретно ресурсы - везде обучение последовательно яваскрипту.
Есть общий хороший последовательный справочник js - [url]learn.javascript.ru[/url]. Если обучение html на htmlbook ты прошёл, то уроки с этого сайта - как раз то, что нужно.
Есть ещё сайт обучения всей спецификации w3c типа htmlbook'а, только на инглише и более полный: ********** - ссылка на раздел, где как раз список свойств для управления стилями.