jQuery
|
|
Бармалей | Дата: 25 Ноября 2008, 13:00 | Сообщение # 141 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline | Quote (Lexanom) *ушел учить jQ * Учите CSS селекторы Code $('td.forumIcoTd + forumNameTd[text="нужный текст"]').prev();
| | |
|
Lexanom | Дата: 26 Ноября 2008, 10:10 | Сообщение # 142 | ● ● ● ● ● 125 сообщений Статус: Offline | как нис транно, не работает. код я понял, он находит обе ячейки а потом возвращается к первому тегу. вроде не напутал? смысл скрипта должен быть вот в чем: <span id="myid"></span> <table> <tr><td class="forumIcoTd"></td><tr><td class="forumNameTd"> mytext0 </td></tr> <tr><td class="forumIcoTd"></td><tr><td class="forumNameTd"> mytext1 </td></tr> <tr><td class="forumIcoTd"></td><tr><td class="forumNameTd"> mytext2 </td></tr> </table> <script>здесь скрипт, который найдет мне forumIcoTd в строке с mytext1, и вставит в #id</script> в качестве скрипта я использовал Code $('#myid').html( $('td.forumIcoTd:eq(1)').html() ) но этот код не срабатывает у некоторых групп, т.к. у них другое кол-во строк в таблице, а указывать для каждой группы с помощью условий свой скрипт не очень удобно. Особенно, если возникает необходимость добавить новую строку, и приходится пересчитывать и переправлять все цифры, коих множество. Возникает путаница и т.п. код же Code $('#myid').html( $('td.forumIcoTd + forumNameTd[text="matext1"]').prev();) не срабатывает даже приставка .html() не помогает/ щас еще похимичу, но врядли что-то выйдет | | |
|
Бармалей | Дата: 26 Ноября 2008, 12:13 | Сообщение # 143 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline | Quote (Бармалей) $('td.forumIcoTd + forumNameTd[text="нужный текст"]').prev(); Code $('td.forumIcoTd + .forumNameTd[text="нужный текст"]').prev();
| | |
|
Lexanom | Дата: 26 Ноября 2008, 14:56 | Сообщение # 144 | ● ● ● ● ● 125 сообщений Статус: Offline | о_О странно, я ведь пробовал $('td.forumIcoTd + td.forumNameTd[text="нужный текст"]').prev(); и не срабатывало... ща попробуюДобавлено (26 Ноябрь 2008, 14:56) --------------------------------------------- неа не работает | | |
|
Бармалей | Дата: 26 Ноября 2008, 14:57 | Сообщение # 145 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline | Code $('td.forumIcoTd + td.forumNameTd:has(a[text="нужный текст"])')
| | |
|
cucYa | Дата: 26 Ноября 2008, 14:57 | Сообщение # 146 | ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | ... ? .find("td:contains('text')").prev(); | | |
|
Lexanom | Дата: 26 Ноября 2008, 15:07 | Сообщение # 147 | ● ● ● ● ● 125 сообщений Статус: Offline | самое смешное, что при добавлении кода $('#myid').html( $('td.forumIcoTd + .forumNameTd[text="matext1"]').prev();) слетают все остальные jQ коды, помещенные в тег <script>... причем этот скрипт стоит не в начале, а практически в кноце, перед самым </script> | | |
|
mob_dp | Дата: 26 Ноября 2008, 15:09 | Сообщение # 148 | ● ● ● ● ● 4112 сообщений Статус: Offline | Надо скрыть класс edited и убрать в td.posttdMessage все <br/> з.ы. создайте ктото гайд по основным функциям jQ или серии заменить/скрыть/добавить, а то я вас задолбаю вопросами тупыми... | | |
|
Lexanom | Отредактировал Lexanom - Среда, 26 Ноября 2008, 15:35 Дата: 26 Ноября 2008, 15:34 | Сообщение # 149 | ● ● ● ● ● 125 сообщений Статус: Offline | $('#rpf').html( $('td.forumIcoTd + td.forumNameTd:has(a[text="текст"])') ) заработал, но он вытаскивает содержимое forumNameTd, а не forumIcoTd, но оно и понятно. Когда же я добавляю $('#rpf').html( $('td.forumIcoTd + td.forumNameTd:has(a[text="текст"]).prev();') ) он вообще ничего не выводит! щас попробую с .find'ом Добавлено (26 Ноябрь 2008, 15:23) --------------------------------------------- Code $('#rpf').html( $('td.forumIcoTd + td.forumNameTd:has(a[text="текст"])') ) работает. Но выводит содержимое второй ячейки. И это единственный код, который вообще хоть что-то нашел и вывел. Code $('#rpf').html( $('td.forumIcoTd + td.forumNameTd:has(a[text="текст"])').prev(); ) Вот этот код ломает все остальные коды (они просто перестают функционировать, и не работает сам Добавлено (26 Ноябрь 2008, 15:26) --------------------------------------------- нельзяли тут приспособить оператор .next() а затем при помощи prev вернуться? у меня не получается Добавлено (26 Ноябрь 2008, 15:34) --------------------------------------------- Code $('#rpf').html( $('td.forumIcoTd + td.forumNameTd:has(a[text="текст"])').prev() ) заработал я всеголишь убрал знак ';' после .prev | | |
|
cucYa | Дата: 26 Ноября 2008, 15:36 | Сообщение # 150 | ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | Lexanom, иногда полезно смотреть консоль ошибок ... | | |
|
Lexanom | Дата: 26 Ноября 2008, 15:43 | Сообщение # 151 | ● ● ● ● ● 125 сообщений Статус: Offline | Quote (cucYa) иногда полезно смотреть консоль ошибок Я не помню как она открывается в опере ЗЫ. Рано я обрадовался выводить то он выводит, и даже правильный класс, но вот совсем не ту ячейку... не в той строке, где был найден текст(((( | | |
|
Бармалей | Дата: 26 Ноября 2008, 15:50 | Сообщение # 152 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline | mob_dp, гугль Quote (Lexanom) $('#myid').html( $('td.forumIcoTd + .forumNameTd[text="matext1"]').prev();) естесвенно все слетит, тут Syntax Error.Code $('#myid').html( $('td.forumIcoTd + .forumNameTd[text="matext1"]').prev().html() )
| | |
|
Lexanom | Дата: 26 Ноября 2008, 16:00 | Сообщение # 153 | ● ● ● ● ● 125 сообщений Статус: Offline | Quote (Бармалей) $('#myid').html( $('td.forumIcoTd + .forumNameTd[text="matext1"]').prev().html() ) Да, да, я так и сделал. Но скрипт почему то выводит содержимое совсем другого td.forumIcoTd. В общем я еще сам поэксперементирую. Кажется я набрел на след | | |
|
mob_dp | Дата: 26 Ноября 2008, 17:46 | Сообщение # 154 | ● ● ● ● ● 4112 сообщений Статус: Offline | Бармалей, неужели сложно один раз общими усилиями написать гайд (или кусок стянуть где-то), и выложить? А на тему гугла: [ запрос ] 8 ссылка - Черный расизм Из всего по существу пара ссылок. Вот тебе и гугл... | | |
|
Бармалей | Дата: 26 Ноября 2008, 17:47 | Сообщение # 155 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline |
| | |
|
Lexanom | Дата: 29 Ноября 2008, 07:41 | Сообщение # 156 | ● ● ● ● ● 125 сообщений Статус: Offline | Quote (cucYa) я бы понаделал там всякой фигни, и форум весил бы не 1 мб, а 10 мб Как мне знакомы эти маниакальные замашки Значит, нужна фнкция, аналгочная .slideToggle() или .slideDown(), но только с выезжанием вбок. Где-то не так давно видел пример выпадающего меню на jQ, там было нечто подобное (одновременно применялось появление, выезжание вниз и вбок), а сейчас не могу найти. Добавлено (29 Ноябрь 2008, 07:41) --------------------------------------------- Блин... нашел пример тот... там стоит функция .show()... Т.е. все три эффекта заточены под него одного? Как быть? Пробовал подставлять вместо Down/Toggle Right\Left, и ничего не выходило | | |
|
Бармалей | Дата: 29 Ноября 2008, 10:06 | Сообщение # 157 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline | что-то вроде этогоCode .animate({width:300})
| | |
|
Lexanom | Дата: 30 Ноября 2008, 07:34 | Сообщение # 158 | ● ● ● ● ● 125 сообщений Статус: Offline | черт побери как раз подумал, что нужно было написать "только не .animate" дело в том, что анимация получается рваной и дерганой, если в разворачивающемся div'е есть какой-либо контент. Пример (прошу прощения за синтаксис): Code <script> $('#primer').animate({width:300}); </script> <div id="primer">текст и картинки</div> тогда получается, что див разворачивается по ширине не с нуля (не с полной невидимости) а вначале рывком показывается весь контент, текст и картинки, а потом уже от них начинается "развертка". Выглядит некрасиво. ЗЫ. может можно написать плагин на основе .slideDown с изменением направления? только я не знаю как. нашел несколько примеров в сети с горизонтальным меню, но там тяжеленные скрипты и применяется версия jquery "для разработчиков", т.е. около 100Кб | | |
|
Бармалей | Дата: 30 Ноября 2008, 07:52 | Сообщение # 159 | ● ● ● ● ● Тиран 7772 сообщения Статус: Offline | Quote (Lexanom) тогда получается, что див разворачивается по ширине не с нуля (не с полной невидимости) а вначале рывком показывается весь контент, текст и картинки, а потом уже от них начинается "развертка". Выглядит некрасиво. Только что проверил - все красиво. Делайте такCode <script type="text/javascript">$(document).ready(function(){ $('#primer').animate({width:'300px'}); }); </script> <div id="primer">текст и картинки</div>
| | |
|
Lexanom | Дата: 30 Ноября 2008, 08:13 | Сообщение # 160 | ● ● ● ● ● 125 сообщений Статус: Offline | Да, еще вопрос: можно какнить упростить такой скрипт: Code var kt=true if (kt=false) {$('#.myid').show(500);kt=true;} else {$('#.myid').hide(500);kt=false;} | | |
|