Я пытаюсь создать функциональность, раскрывая больше элемента, когда вы нажимаете на ссылку с тегом rel, который ссылается на нее.
<div class="reveal-more"><a href="#" rel="#new-deals">View More Deals ▼</a></div>
$(".reveal-more a").click( function() {
var moreContainer = $(this).attr('rel');
var moreContainerHeight = $("'" + moreContainer + "'").height;
alert(moreContainerHeight);
return false;
});
Chrome продолжает бросать ошибку - Синтаксическая ошибка, нераспознанное выражение: '# new-deals'
Кажется, у вас проблемы с переносом переменной, попробуйте изменить код на следующее, я обнаружил, что он работает нормально с кодом:
<div class="reveal-more"><a href="#" rel="#new-deals">View More Deals ▼</a></div>
$(".reveal-more a").click( function() {
var moreContainer = $(this).attr('rel');
var moreContainerHeight = $(moreContainer).height();
alert(moreContainerHeight);
return false;
});
Я считаю, что ваша проблема заключалась в том, что у вас был строковый объект, и вы обертывали строку в ''
когда jQuery автоматически обрабатывает это.
EDIT: измененный код
Я думаю, это потому, что вы просите высоты класса.
На самом деле вам нужно спросить высоту идентификатора.
Класс может относиться к серии div, все с разной высотой.
.height()
- это функция, а не переменная. Таким образом, вы должны изменить.height
чтобы быть.height()
.