Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Как вывести название раздела

Страницы: 1  |  2  |  3  |  4
04.11.2013, 14:36
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 386

Ну это конечно, вариант, но а если стоит задача грузить изображения в админке?
Ну т.е. фоновое изображение должно не в css файле прописываться, а должно гузиться в админке.

Как тогда быть в этом случае?

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
04.11.2013, 18:18
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Код:
background: url(/netcat_files/XX_YY.png) no-repat left top

XX - номер поля в Системных таблицах
YY - номер раздела

Stark
04.11.2013, 19:32
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 386

Цитата:
background: url(/netcat_files/XX_YY.png) no-repat left top


XX - номер поля в Системных таблицах
YY - номер раздела


Но ведь название изображения загружается реальное, а соответственно динамично в css не пропишешь имя картинки.

Или куда Вы предлагаете писать этот код: background: url(/netcat_files/XX_YY.png) no-repat left top , если не в файл стилей и не в style в теге?

Если каждому li будет подставлен свой class, через системное поле раздела, т.е. в каждом разделе можно будет написать класс, используя строковое поле, а потом этот класс будет подставляться динамически для каждого раздела в шаблонах навигации... тогда я не пойму, куда бэкграунд писать (background: url(/netcat_files/XX_YY.png) no-repat left top)... если в css, то толку... имя у загруженной картинки остаётся именно таким, какое есть до загрузки, т.е. когда загружено лежит в папке уже в таком виде: http://mysite.ru/netcat_files/1056/img_caption10.11.2011.png ... ну т.е. имя изображения сохраняется, так смысл тогда в XX_YY? В css файле заранее не прописать, если только не знать точное имя картинки... а знать его невозможно, так как грузить изображение может любой человек, который просто ожидает после загрузки смену изображения и всё. И формат также может быть любым...не только png.

Хочется добиться максимальной автоматизации данного процесса.

Можете уточнить, что Вы имели ввиду?:
Цитата:
background: url(/netcat_files/XX_YY.png) no-repat left top


XX - номер поля в Системных таблицах
YY - номер раздела


Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
04.11.2013, 19:50
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Цитата:
Но ведь название изображения загружается реальное

Тип файловой системы - Простая, и именно в таком виде будет доступно изображение - /netcat_files/XX_YY.png

Цитата:
не только png

А если так, то только прописывать стиль в шаблоне вывода меню.
А background-position уже в css.

Цитата:
то толку... имя у загруженной картинки остаётся именно таким, какое есть до загрузки, т.е. когда загружено лежит в папке уже в таком виде: http://mysite.ru/netcat_files/1056/img_caption10.11.2011.png ... ну т.е. имя изображения сохраняется, так смысл тогда в XX_YY?

вы пробовали это сделать или просто так думаете?

Stark
04.11.2013, 20:01
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 386

Цитата:
то толку... имя у загруженной картинки остаётся именно таким, какое есть до загрузки, т.е. когда загружено лежит в папке уже в таком виде: http://mysite.ru/netcat_files/1056/img_caption10.11.2011.png ... ну т.е. имя изображения сохраняется, так смысл тогда в XX_YY?

вы пробовали это сделать или просто так думаете?


Я пробовал со стандартной файловой системой, а с простой не пробовал...я подумал, что Вы имеете ввиду этот момент, но...если пойти дальше и предположить что нам обязательно использовать файл. систему не простую, а стандартную или защищенную, то тогда остается вариант прописывать стиль в шаблоне и ничего более? Или можно ещё как-то 'исхитриться'? Вы не сталкивались с подобным?

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
04.11.2013, 22:29
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Цитата:
обязательно использовать файл. систему не простую, а стандартную или защищенную, то тогда остается вариант прописывать стиль в шаблоне и ничего более? Или можно ещё как-то 'исхитриться'? Вы не сталкивались с подобным?

Если Стандартная или Защищенная то да, вариант с css-файлом не проходит.
А может не бэкграундом картинку вставлять и по :hover к ней применять opacity?
Или нужно, чтобы картинка полностью изменялась?

Stark
05.11.2013, 06:51
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 386

В моем случае желательно картинку изменять полностью.

Спасибо большое за помощь.
Буду использовать простую файловую систему/

Ещё раз спасибо улыбка

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
05.11.2013, 07:13
Руслан Густокашин
Студия Вэлпис

Зарегистрирован:
2012-02-06
Сообщений: 962

Павел, вот еще один хитрый вариант, чисто на jQuery.
В шаблоне:
Код:
$vertical_menu[0]['prefix']   = "<ul class='menuha'>";
$vertical_menu[0]['suffix'] = "</ul>";
$vertical_menu[0]['active'] = "<li style='background-image: url(%BackgroundImgSection);'><a rel='url(%BackgroundImgSectionHover)' href='%URL'>%NAME</a></li>%NEXT_LEVEL";
$vertical_menu[0]['unactive'] = $vertical_menu[0]['active'];


В js-файле:
Код:
$( ".menuha li" ).hover(
function() {
mainbg=$(this).css('backgroundImage');
$(this).css('backgroundImage', $(this).find('a').attr('rel') );
$(this).find('a').attr('rel',mainbg);
}, function() {
hoverbg=$(this).css('backgroundImage');
$(this).css('backgroundImage', $(this).find('a').attr('rel') );
$(this).find('a').attr('rel',hoverbg);
}
);


Но лучше бы вам загружать сдвоенную картинку в настройки раздела, а не две картинки в разные поля. Дело в том, что если менять URL картинки при наведении курсора, то будет некоторая задержка - потребуется время, чтобы картинка скачалась. Этого недостатка лишен "сдвоенный" вариант картинки. В случае, если переделать все так, чтобы пользователь грузил только одну, но сдвоенную картинку, скрипт упрощается.
В шаблоне:
Код:
$vertical_menu[0]['prefix']   = "<ul class='menuha'>";
$vertical_menu[0]['suffix'] = "</ul>";
$vertical_menu[0]['active'] = "<li style='background-image: url(%BackgroundImgSection);'><a href='%URL'>%NAME</a></li>%NEXT_LEVEL";
$vertical_menu[0]['unactive'] = $vertical_menu[0]['active'];


В js-файле:
Код:
$( ".menuha li" ).hover(
function() {
$(this).css('backgroundPosition', '0 -100px'); // смещаем картинку на 100 пикселей вниз
}, function() {
$(this).css('backgroundPosition', '0 0' );
}
);


Только не забудьте задать для фоновой картинки в CSS высоту - иначе на сайте будет показываться сдвоенная картинка, а не нужная ее половинка.
05.11.2013, 07:24
ipm
Ильин Павел

Зарегистрирован:
2012-10-12
Сообщений: 386

Цитата:
Но лучше бы вам загружать сдвоенную картинку в настройки раздела, а не две картинки в разные поля. Дело в том, что если менять URL картинки при наведении курсора, то будет некоторая задержка - потребуется время, чтобы картинка скачалась. Этого недостатка лишен "сдвоенный" вариант картинки. В случае, если переделать все так, чтобы пользователь грузил только одну, но сдвоенную картинку, скрипт упрощается.


Да, Руслан, спасибо. Я так и решил делать.

За идею тоже спасибо, может пригодится)

Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
05.11.2013, 21:59
Руслан Густокашин
Студия Вэлпис

Зарегистрирован:
2012-02-06
Сообщений: 962

Пожалуйста!
Хм, чет я только сейчас понял, что ступил - сделал в последнем варианте на жквери эмуляцию стандартного CSS-псевдокласса :hover, когда можно было ограничиться CSS'кой. :-)))
198 196 2013-11-05 22:29:18 13371
Страницы: 1  |  2  |  3  |  4
Описание проекта