Всплывающая проблема с jQuery / javascript и WebKit - PullRequest
0 голосов
/ 04 декабря 2009

У меня проблема, связанная с WebKit: http://demo.frojd.se/webkit/index.html

Когда вы нажимаете «Пункт меню 1», это показывает, что это дети. Это прекрасно работает в Firefox 3.5, IE8 и в Opera 10. В WebKit-браузерах (Safari 4 и Chrome 3) это не так.

Однако, если я предварительно настрою все различные классы и настройки css в HTML, он отображает правильно (без событий нажатия JavaScript). У меня есть URL, чтобы показать вам, но не могу, так как это мой первый пост.

Есть идеи, почему это может быть?

Ура, Робин.

Ответы [ 2 ]

0 голосов
/ 05 декабря 2009

Я действительно не очень внимательно изучил код, но в этой ситуации нужно обратить внимание на отступы или поля, установленные в элементах меню div. В Safari это не учитывается в отношении ширины, поэтому они могут сделать div или содержимое div более широкими, чем вы ожидаете, и это приведет к тому, что следующий элемент будет перемещен туда, куда вы не ожидаете этого.

Не уверен, поможет ли это, но это то место, куда вы можете посмотреть, если все еще застряли.

Редактировать: После просмотра источника с помощью Web Inspector, кажется, что divs с class = 'parentHook' недостаточно широки после нажатия на них. После щелчка мышью класс меняется на parentContainer, который устанавливает margin-left: -18px; margin-top: -15px; ', и это, кажется, отбрасывает ширину этого div. В Web Inspector я изменил ширину этого div на 150px, и он работал как положено.

0 голосов
/ 04 декабря 2009

Настоящий и уродливый взлом, но эй, это работает. попробуйте скрыть и показать по щелчку <li>

для простого теста: попробуйте это в консоли

$('#nav li:first').hide(50).show(50)
...