Nexus,
прошу меня простить за вновь поднятую тему. При добавлении этого скрипта var body_width=$('body').width(), $wrp=$('.wrp'); $wrp.css({ width:body_width, 'margin-left':-$wrp.offset().left }); происходит конфликт скриптов. А именно все скрипты, которые находятся ниже его, перестают работать. Если я этот скрипт располагаю самым последним, то тогда все скрипты работают корректно. Если я заключаю его в ~function () { }(); то это не помогает избежать конфликта. Скажите, пожалуйста, что можно сделать? |
LADYX,
консоль что пишет? |
Цитата:
показывает на ошибку в строке номер такой-то, на этой строке выходит: 'margin-left':-$wrp.offset().left да, и подчеркивает в этой строке волной ).left |
LADYX,
скорее всего элемента $('.wrp'); ещё нет сделайте так $(function() { var body_width=$('body').width(), $wrp=$('.wrp'); $wrp.css({ width:body_width, 'margin-left':-$wrp.offset().left }); }); |
рони,
я уже так тоже пробовал, не помогает |
LADYX,
делайте макет с проблемой или ждите телепата. что будет в консоли, код ниже $(function() { var body_width=$('body').width(), $wrp=$('.wrp'); console.log($wrp.length) $wrp.css({ width:body_width, 'margin-left':-$wrp.offset().left }); }); |
LADYX,
Цитата:
|
Nexus,
нет, не в этом дело. Сейчас скрипт у меня вот такой: $(function() { function update() { var body_width=$('body').width(), $uf=$('#pp-uf_range'); $uf.css({ width:body_width, 'margin-left':-$uf.offset().left }); console.log($uf.length) } $(window).resize(update); update(); }); рони, в консоли вот что: Uncaught TypeError: Cannot read property 'left' of undefined at update (scripts.js:113) at HTMLDocument.<anonymous> (scripts.js:119) at i (jquery.js?v=22:2) at Object.fireWith [as resolveWith] (jquery.js?v=22:2) at Function.ready (jquery.js?v=22:2) at HTMLDocument.J (jquery.js?v=22:2) scripts.js:113 это: 'margin-left':-$uf.offset().left подчеркивает ).left scripts.js:119 это: update(); Цитата:
я правильно дал информацию? Или не то что нужно? Тогда ткните меня, пожалуйста, носом) |
LADYX, попробуйте так и смотрите консоль:
$(function(){ $(window).resize(function(){ var body_width=$('body').width(), $uf=$('#pp-uf_range'); if(!$uf.length) throw new Error('Element «#pp-uf_range» not found'); $uf.css({ width:body_width, 'margin-left':-$uf.offset().left }); }).resize(); }); У вас элемента нет на странице. |
Nexus,
конфликт решается заменой строки $uf.css({ на $uf.length && $uf.css({ но тогда появляется другая проблема. Есть у меня другой скрипт $(function() { $(window).scroll(function() { var windowScroll = $(window).scrollTop(); var element = $('.pp-sections'); var distanceTop = element.offset().top - ($(window).height() / 2); var distanceHeight = element.offset().top - ($(window).height() / 2 - element.height()); if (windowScroll > distanceTop && windowScroll < distanceHeight) $('#panel-pp').animate({ 'left': '0px' }, 500); else $('#panel-pp').stop(true).animate({ 'left': '-146px' }, 200); }); }); И на страницах, где нет блока .pp-sections, в консоли появляется ошибка в строке var distanceTop = element.offset().top - ($(window).height() / 2); Если обернуть этот скрипт в ~function () { }(); то это не помогает. Что можно сделать? Простите меня за миллион вопросов, я сам уже запарился, ни одно, так другое :( |
Часовой пояс GMT +3, время: 05:26. |