Изменить 3/02/12: Нашел другое решение, которое работало само по себе без необходимости каких-либо других функций; см. мой собственный ответ ниже.
Я просто не вижу, что здесь не так, и мне не повезло с ответами на все остальные вопросы под названием"SyntaxError: Ожидаемый токен '}'"
Я работаю с липкой div
функцией, которая сохраняет <div class="sticky">
всегда видимой при прокрутке окна.
jQuery 1.7.1 включен в WordPress и загружается перед двумя функциями ниже. Все функции загружаются, согласно Dev Tools.
A <div class="sticky">with various html</div>
помещается примерно как тег </body>
.
Но я получаю ошибку SyntaxError: Expected token '}'.
Это в шапке:
$(document).ready(function(){
$('.sticky').jsticky({
marginTop: 0,
});
Эта основная функция включена над ней:
(function($){
$.fn.extend({
//plugin name - jsticky
jsticky: function(options) {
//Settings list and the default values
var defaults = {
marginTop: 0
};
var options = $.extend(defaults, options);
return this.each(function() {
var o = options;
//Assign current element to variable, in this case is UL element
var obj = $(this);
var offset = obj.offset();
var topOffset = offset.top;
var marginTop = obj.css("marginTop");
var marginTopNum = parseInt(marginTop);
var diff = topOffset - marginTopNum;
var offset = obj.offset();
var topOffset = offset.top;
var leftOffset = offset.left;
var marginTop = obj.css("marginTop");
var marginLeft = obj.css("marginLeft");
$(window).scroll(function() {
var WindowScrollTop = $(window).scrollTop();
var scrollTop = WindowScrollTop + o.marginTop;
if (scrollTop >= topOffset){
obj.css({
marginTop: o.marginTop,
marginLeft: leftOffset,
position: 'fixed'
});
}
if (scrollTop < topOffset){
obj.css({
marginTop: marginTop,
marginLeft: marginLeft,
position: 'relative'
});
}
});
});
}
});
})(jQuery);