Почему jQuery работает в jSfiddle, а не на сайте?

0

Я использую jQuery, чтобы изменить высоту div, я использовал статические значения до того, как они были установлены мной, но теперь я создал тот, который делает div до полной высоты и возвращает его на 24px. Теперь он отлично работает в JSFiddle, но не на сайте.

jQuery(".dsellactiontext").toggle(function(){
jQuery(this.parentNode).animate({
    height: $(this.parentNode)[0].scrollHeight+'px'
  }, 400);
},function(){
jQuery(this.parentNode).animate({height:24},600);
}); 

Скрипка: http://jsfiddle.net/skoltyno/ZBR8G/

Страница тестового сайта: http://bocaratonrealestatemarket.com/jquery-test-page/

Вы можете видеть в инспекторе, что высота не переполнена до полной, но она переключит ее на 24px.

Что тут происходит?

  • 0
    @Matt Извините, это не работает, вы можете видеть в инспекторе, что он работает, он просто не устанавливает полную высоту, а только устанавливает 24px, посмотрите на div через инспектора.

1 ответ

0

Wordpress запускает jQuery в режиме noConflict, что означает, что $ не является псевдонимом jQuery. Это означает, что ваш $(this.parentNode)[0].scrollHeight+'px' выдает ошибку (которую вы можете видеть на консоли).

Пытаться;

jQuery(this.parentNode)[0].scrollHeight+'px'

... или, создавая объект jQuery элемента DOM, сразу же обращающийся к DOM Element, просто:

this.parentNode.scrollHeight+'px'

... должно быть достаточно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню