Архив - только для чтения
Архив темы: Проблемы в модуле "Дневник (блог)"
grantand
Сообщений: 13
Репутация: 4

Сообщение # 121 | 09:33:15
Ребята, такой вопрос. Создаю на сайте блог для всех пользователей. Но есть одна проблема, дизайн сайта у меня фиксированного размера, а это значит, что, когда пользователь вставляет в свой блог картинку, например, размером в 800 пикселей то сайт весь разлазится. Можно ли какими-то хитростями не давать пользователю вставлять большие картинки, или хотябы как-то сжимать их по ширине? Это особенно волнует если пользователь будет вставлять картинку с другого сервера по средствам штмл-тегов.
wondermaker
Сообщений: 3
Репутация: 19

Сообщение # 122 | 09:49:41
grantand, когда-то была тема, но найти не смог, но было предложение такое - втавить в форуме код ф-ции на javascript

$(function ImgResize(){
pWidth=550;
pHeight = 1200;
$('.posttdMessage img').each(function(){
if ((this.width > pWidth) || (this.height > pHeight)) {
var k = Math.min(pWidth/this.width, pHeight/this.height);
this.width = Math.floor(this.width*k);
if (k < 0.8) {
this.border = 5;
this.onclick = function(){ window.open(this.src); }
this.style.cursor = "pointer";
}
}
});
})

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

Добавлял такой вот код:
function CallImgResize() { ImgResize(); }
setTimeout(CallImgResize(), 25000);
setTimeout('CallImgResize()', 50000);
Но и он не всегда помогает (списываю на глюки браузеров...)

Кстати, подобный код присобачил и к модулю новостей (или board у нас что?).
$(function ImgResize(){
pWidth=550;
pHeight = 1200;
$('.eText img').each(function(){
if ((this.width > pWidth) || (this.height > pHeight)) {
var k = Math.min(pWidth/this.width, pHeight/this.height);
this.width = Math.floor(this.width*k);
if (k < 0.8) {
this.border = 5;
this.onclick = function(){ window.open(this.src); }
this.style.cursor = "pointer";
}
}
});
})

Нашел - //forum.ucoz.ru/forum/39-34461-4
Там пара страниц.

По блогу - посмотри, поменяй соотв. тег (думаю, найдешь сам, а то нет времени на эксперименты).

Добавлено (30-Сен-2010, 09:49:41)
---------------------------------------------
Пример на board-е, как выглядят картинки после обработки - черный "бордюр" вокруг изображения и возможность открыть его в полном размере по клику на изображение

http://blacknovember.at.ua/board....1-0-230


Сообщение отредактировал wondermaker - Четверг, 30 Сен 2010, 09:47:06
grantand
Сообщений: 13
Репутация: 4

Сообщение # 123 | 09:49:57
wondermaker, извиняюсь, а можно немножечко мне разяъснить куда и как правильно этот код вставить. Ато я его уже по всему блогу тыкал, а катинки что-то в размерах не уменьшаются sad

такс. вопрос пока снимается, не видел добавленого smile

Сообщение отредактировал grantand - Четверг, 30 Сен 2010, 09:50:37
wondermaker
Сообщений: 3
Репутация: 19

Сообщение # 124 | 09:57:30
grantand, один из минусов может вылезать, если на большую картинку поставили ссылку, тогда в зависимости от ситуации (точно не помню по браузерам) может не открываться изображение по клику (пройдет только ПКМ - перейти по ссылке).

grantand
Сообщений: 13
Репутация: 4

Сообщение # 125 | 10:20:39
wondermaker, нет, что-то я всетаки не пойму...неработает хоть ты плач. Может в блоге оно не работает? Я уже, извиняюсь за наглость, открыл код страницы вашего форума и уже оттуда код скопировал, немогу никак понять как же он работает, а еще больше не могу понять почему не работает.

Может где-то нужно какую переменную сменить? Я ж в яваскриптах неочень...ато и хуже чем неочень. Подскажите пожалуйста как правильно и куда правильно его всунуть? cry

Добавлено (30-Сен-2010, 10:20:39)
---------------------------------------------

Quote (wondermaker)
$('.eText img').each(function(){

вот этот eText - это у нас что?

Miss_Esq
Сообщений: 13859
Репутация: 4159
Уровень замечаний:

Сообщение # 126 | 10:51:37
grantand, Размеры изображения , вставляемые пользователем в сообщения , можно ограничивать по размерам , прописав дополнительный класс для формы вид материалов , с указанием конкретных размеров ,для класса элемента формы в которой размешаются изображения .....

Например типа -


Сообщение отредактировал Miss_Esq - Четверг, 30 Сен 2010, 10:53:09
grantand
Сообщений: 13
Репутация: 4

Сообщение # 127 | 11:07:59
Miss_Esq, спасибо! Очень помогли! +1 в карму!
wondermaker
Сообщений: 3
Репутация: 19

Сообщение # 128 | 12:25:27
Miss_Esq, может имелось в виду eMessage ???

Да и минус метода в том, что если ставить не 200, а 500-600, что ближе к сегодняшним реалиям, и что не заставит пользователя с микроскопом смотреть, то небольшие картинки будут растягиваться до соотв. размеров. Большие-то ужмутся, а вот небольшие растянутся. Превьюшки, например, если расположить в блоге, то они растянутся до общих размеров.

При этом чтобы посмотреть картинку в полном размере надо будет либо делать ссылку на полную картинку (что делают не все и не всегда), либо вручную открывать (в зависимости от браузера - через ПКМ или копируя путь и открывая в новом окне/вкладке).

"Мой" (не моя идея) же метод дает возможность только уменьшать те изображения, которые превышают максимально-допустимые и дают возможность просмотра по клику полного варианта.


grantand
Сообщений: 13
Репутация: 4

Сообщение # 129 | 15:12:57
wondermaker, да согласен, но у меня что-то ваш метод к сожалению не заработал sad
wondermaker
Сообщений: 3
Репутация: 19

Сообщение # 130 | 15:24:44
grantand,
попробуйте так - вставить для "Страница списка материалов" и "Страница материала и комментариев к нему" (может еще и в странице материалов категории или как она там зовется, если используется)
вставить такой вариант

Code

$(function ImgResize(){
pWidth=550; // по вкусу
pHeight = 1200; // по вкусу
$('.eMessage img').each(function(){
if ((this.width > pWidth) || (this.height > pHeight)) {
var k = Math.min(pWidth/this.width, pHeight/this.height);
this.width = Math.floor(this.width*k);
if (k < 0.8) {
this.border = 5;
this.onclick = function(){ window.open(this.src); }
this.style.cursor = "pointer";
}
}
});
})  

grantand
Сообщений: 13
Репутация: 4

Сообщение # 131 | 17:59:40
wondermaker, о! Заработало! Спасибо! smile
_CrySiS_
Сообщений: 464
Репутация: 38

Сообщение # 132 | 19:38:15
Не могу почему то нормально сделать новый дизайн блога: он всегда пропадает.Подскажите как нормально сделать можно!
Miss_Esq
Сообщений: 13859
Репутация: 4159
Уровень замечаний:

Сообщение # 133 | 02:23:13
wondermaker,
Quote
При этом чтобы посмотреть картинку в полном размере надо будет либо делать ссылку на полную картинку
Методов решения этого вопроса навалом . Предпочитаю так - My WebPage

_CrySiS_,

Quote
Подскажите как нормально сделать можно!
Как делаете это ?? Предпочтительно конечно в режиме HTML .....

Сообщение отредактировал Miss_Esq - Пятница, 01 Окт 2010, 02:24:33
muzfan
Репутация: -1

Сообщение # 134 | 09:20:20
Привет народ. Разобрался наконец с дневником сейчас все выглядет как в нормальном варезнике..все вроде получилось и все работает..доступ гостям открыта гости ссылок н видят.. Посмотреть можете тут нужны справки- можете обращатса biggrin
Andrew2518
Сообщений: 8
Репутация: 2
Уровень замечаний:

Сообщение # 135 | 23:41:34
Здравствуйте. Я создал категории в модуле блог, но после добавления записи, в адресе блога нет названия категории.
Должно быть так http://www.site.ru/blog/sundry/zagolovok/2010-10-14-15
а получается без названия категории http://www.site.ru/blog/zagolovok/2010-10-14-15
Чпу включено, кэш очищал. Категории редактировал, но тоже не помогло. При добавлении записи, выбор категории включен.
Поиск:
Telegram
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!