|
|
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Всем добрый день! Использую библиотеку jQuery Mobile с CSS для Андроида. Пытаюсь сделать следующее: на странице page1.html имеется список ul. Пытаюсь добавить в него выпадающий список (collapsible) в функции JavaScript. В функции также читаются данные из файла JSON. При проверке - вроде все работает, но добавляется не выпадающий список, а отдельные два элемента (типа li). Что я делаю не так? Вот код header-a описанной страницы: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 18:08 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
вы создаете в цикле элементы li, и еще в придачу их innerHTML присваиваете li получаются вложенные друг в друга li и не пользуйтесь eval для получения json, есть и BIF, и jquery функции для этого ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 18:45 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
у вас получается такая какая-то иерархия: ul > div > li > li прочитайте какой нибудь букварь про хтмл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 18:48 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Иерархия такая и должна быть: ul > div(collapsible) > ul > li. В innerHTML для li поубирал <li>, не помогло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 18:54 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
ВалисийИерархия такая и должна быть: ul > div(collapsible) > ul > li. В innerHTML для li поубирал <li>, не помогло. в том примере, который вы показали вы добавляете li приямо в див возможно, вы что - то от нас скрывете? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:00 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
виноват, и впрямь скрываю) добавил кое-что. приведу тело функции: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:04 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
напрашивается вопрос: там, где я делаю createElement(div), и пишу ему innerHTML='<div data-role="collapsible"....></div>, я все верно делаю? Это задаст нужные свойства? Потому что отображаться оно отображается, но совсем не так, как хотелось бы (совсем не так, как получается при написании просто html-кода). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:06 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Похоже, подбираюсь к решению проблемы) Посмотрел внимательно в отладчике фаерфокса, и после клика по списку увидел следующее: Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. то есть, получается что я ul не загоняю в div, то есть иерархии нет. как бы эту проблему решить? я неправильно использую appendChild? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:14 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
почему в названии топика jQuery ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:32 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. http://jsfiddle.net/Ns59H/ дальше напильником ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:41 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
</div> очепятка во второй строчке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 19:45 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
" jQuery+Javascript" - очень круто! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 20:04 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
а вопросик по сабжу вот есть 2 способа создания элемента var Div=document.createElement('div'); Div.innerHTML='<div ...... onclick="start()">'; Div.onclick=start() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 20:47 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
блин , сорвалось вот есть 2 способа создания элемента Код: javascript 1. 2. 3. 4. 5. а) вопрос чем они отличаются. как бэ что правильнее, что не очень , или монопенисуально по мне так второй способ лучше. б) и насколько кошернее создавать элементы динамически , а не прописывать их изначально в <body> страница типа выглядит так Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 20:54 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
beg-in-er, имхо через innerHTML быстрее и меньше кроссбраузерных несовместимостей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:01 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
beg-in-er, имхо по варианту б): динамическая работа с html-кодом позволяет делать быстрый интерфейс без перезагрузки и сокращать нагрузку на сервер, например, корзину заказов лучше хранить и считать на клиенте (в localStorage), меняя html динамически, то-есть сервер не хранит промежуточные списки, а хранит только оформленные заказы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:08 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Использовать оба вариант нужно по Необходимости и в зависимости от задачи, И оба варианта не имеют прямого Отношения к увеличению или снижению Нагрузки на сервер :)) Если есть дом элемент, содержащий Большое количество дочерних Элементов, то при присвоении inner html Все рендерится заново, что не всегда оправдано Нужно разумно и по месту Использовать оба варианта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:37 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
От веть как, и не поспоришь ведь А по сабжу вспомнил старое высказывание коллеги - ИТ-шника (не программиста): "это нельзя сделать на javascript, надо на jquery" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:41 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
От веть как,И оба варианта не имеют прямого Отношения к увеличению или снижению почему? если вся черновая работа ложится на клинта, а сервак только данные присылает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:48 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
beg-in-erОт веть как,И оба варианта не имеют прямого Отношения к увеличению или снижению почему? если вся черновая работа ложится на клинта, а сервак только данные присылаетну здесь надо учитывать, что поисковики надо прикармливать постоянно... так что "серверный" html рулит, как рулит и то, что одна и та-же инфа (типа корзины или личного кабинета), должны открываться без перехода на новую страницу в "модальном" окне. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:53 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
beg-in-er, Поэтому я и сказал прямого )) Можно положить сервер собственными Аякс реквестами, при этом прося у него Только данные и яростно используя При этом inner html )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2013, 21:54 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Паганель, по поводу напильника: похоже, в нем-то вся и беда. Отображаться оно отображается, но очень некорректно. В результате к списку добавляется элемент типа ul (то есть просто список), а мне нужен виджет библиотеки jQuery Mobile (collapsible). Вот он никак не хочет появиться. Кстати, поэтому в названии темы присутствует jQuery. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2013, 12:07 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
гляньте примеры из доки http://jquerymobile.com/demos/1.2.0/docs/content/content-collapsible.html , сравните с тем что получается у Вас и найдите различия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2013, 12:11 |
|
||
|
jQuery+Javascript добавление элемента
|
|||
|---|---|---|---|
|
#18+
Вот что получается у меня (взято из инспектора фаерфокса): Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. А вот что у них: Код: html 1. 2. 3. 4. Разницы особой не наблюдаю (разве что порядок атрибутов, но не думаю, что он существенный). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2013, 12:29 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=38449626&tid=1447711]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
184ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 541ms |

| 0 / 0 |
