Доброго времени, друзья. Есть задача, на поиск решения которой пошли уже вторые сутки, т.к. JS не знаю совершенно.
На странице будет n-ное количество небольших слайдеров, меняющих размер в зависимости от родителя. Страница на Twitter Bootstrap 3. Ни один из мне известных слайдеров не подойдет, т.к. страница отзывчивая, и div для слайдера постоянно меняет свой размер, а насколько мне известно, все слайдеры работают только с постоянной шириной либо высотой родителя (прячут через overflow: hidden; все картинки, кроме одной, потом сдвигают).
Мне же нужно выстроить их одна за другой, абсолютно позиционировав, а потом менять им z-index.
img.hold (стр. 27) нужен для того, чтобы высота div#carousel была равна высоте картинок (они одинакового размера), т.к. сами картинки img.display абсолютно позиционированы, соответственно, они сами с задачей не справятся. Т.к. и img.hold и img.display у нас img-responsive, эталонная img.hold будет растягивать нам нашего родителя до размеров img.display. Это уже работает (пусть и через ж..пу), т.к. я в инструментах разработчика руками меняю img.display по очереди z-index и происходит то, что должно происходить по нажатию кнопочек.
Я вижу два алгоритма:
1)
1. По нажатию #next проверяем, существует ли объект $current. Если нет, переходим к п. 2, если есть - к п. 4
2. У родителя ищем первого потомка с #rowScroll
3. Присваиваем объекту $current то, что нашли
4. Устанавливаем объекту $currentz-index: 100;
5. Переходим к следующему элементу в дереве, ставим ему z-index: 101;
6. Присваиваем объекту $current найденный в п. 5 элемент
С #prev то же самое, только нужно будет искать предыдущий элемент. И я не в курсе, сможет ли при таком алгоритме браузер хранить объект $current, т.к. я совершенно не работал с JS. Думаю, что может, но если нет, то такой вариант не подходит.
2)
Все то же самое, только у родителя в потомках искать не элементы с #rowScroll (п. 2), а элементы с z-index:101. Естественно, первому img.display нужно будет выставить z-index:101 при любом варианте, но это не проблема.
Как мне кажется, здесь 10-20 строк на jQuery. Фреймворк не принципиален. Помогите, великие знатоки JS, иначе я сойду с ума
DelphinPRO, Да ну, бросьте. Это неверный путь. Если ещё толком в синтаксисе не разобрался, а уже за PDO хвататься, не понимая, что и как работает. Овладеть парадигмой ООП за пару суток при желании можно. И если человек с классами не работал, вряд ли стоит острая необходимость в PDO.
Это что значит? Вариантов много, но, как мне кажется, Вы о работе с базами данных MySQL в PHP с помощью этих функций. Теперь хотите использовать PDO. Имхо, если не понимаете, что такое ООП, PDO Вам пока нафиг не нужен.
DeadDay пишет:
Теперь захотел перейти на них...
Что подтолкнуло?
DeadDay пишет:
Но вот что то ошибки на ошибках...
Какие ошибки?
DeadDay пишет:
Не понимаю, как работать с этими классами...
Я же Вам дал ссылку на тему, где все 800 раз разжевано, даны ссылки на кучу полезного материала. Лень?
DeadDay пишет:
...дуратскими
Если большинство PHP-разрабов предпочитают ООП процедурному стилю, а для Вас классы дурацкие, это о чем говорит?
DeadDay пишет:
Но стоит только попробовать тоже самое с ооп, с классами....Всё крах полный....
КОНКРЕТНО код и ошибки интерпретатора в студию, тогда будет разговор.
Ещё раз, настоятельно рекомендую почитать тему, которую я давал выше. Лично я подружился с ООП, когда делал более-менее крупный проект с несколькими разработчиками. Вот тогда я понял всю прелесть классов. До этого я понимал, как это работает, но зачем - было совсем не понятно.
DeadDay, почитайте тему, на которую дал ссылку. Там много дельных советов. Что касается вопроса насчет MySQL, что именно Вы имели ввиду? ООП это не фреймворк и не язык программирования.
Википедия пишет:
Объе́ктно-ориенти́рованное программи́рование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов...
Подскажите, реально ли самостоятельно скриптом вызвать 503-ю ошибку сервера? Скрипт на шаред-хостинге. Время на выполнение скрипта - 30 секунд.
Вариант эмуляции мне не подходит, т.к. на сервере в любое время могут обновить версию апача, придется спешно лезть, заменять версию апача в подставной странице, а у меня такая возможность есть не всегда.
Разгорелся спор с товарищем насчет небезызвестного Артемия Лебедева. Товарищ утверждает, что объект нашего спора должен быть примером для подражания каждому веб-дизайнеру.
Я никогда не считал Лебедева примером для подражания, не согласен с ним в 90% вопросов и считаю его личностью с очень высоким ЧСВ и сильно раздутым самомнением. Хотя, кто я такой... )