Мой контейнер div содержит два div div box1 и div box2. box2 - абсолютный div с максимальной шириной 400 пикселей;
HTML:
<div id="container">
<div class="box1"></div>
<div class="box2 animated"></div>
</div>
CSS:
#container{position:relative;width:100%;height:100%;background:red;}
#container #box1{position:relative;width:760px;height:300px;background:blue;margin:0;}
#container #box2{position:absolute;width:60px;max-width:350px;height:300px;background:yellow;;top:0;}
JQuery:
$(document).ready(function(){
var box1width = $(".box1").width();
var windowWidth = $(window).width();
var x = windowWidth - (box1width + 350 ) ;
var wdt = windowWidth - (box1width) ;
if (".box2").hasClass("animated"){
if(x > windowWidth ){
$(".box2").animate({width:'350px'}, 2000);
} else {
$(".box2").animate({width: wdt+ 'px'}, 2000);
}
} else {
alert("no animation for box2 nd width remain 60px");
}
});
Первоначально это оживляет мою box2width; теперь я хочу оживить ширину box2 при изменении размера окна, а также ограничить ширину анимации box2 до 350 пикселей;
Проверьте этот скрипт
if (!$(".box2").hasClass("animated")) {
if (wdt >= 60) {
$(".box2").animate({
width: '350px'
}, 2000);
$(".box2").addClass('animated');
}
} else {
if (wdt <= 350) {
$(".box2").css('width','60px');
$(".box2").removeClass('animated');
}
}
side note: не уверен, что это именно то, что вы хотите, если не комментировать ниже :)
обновление в соответствии с комментариями обновленная скрипка
$(document).ready(function () {
anime();
var resizeTimer;
window.onresize = function () {
if (resizeTimer) {
clearTimeout(resizeTimer);
}
resizeTimer = setTimeout(function () {
anime();
}, 200);
}
})
function anime() {
var windowWidth = $(window).width();
var box1width = $(".box1").width();
var wdt = windowWidth - (box1width);
if (wdt > 60) {
$(".box2").stop(true,true).animate({
width: wdt
}, 1000);
$(".box2").addClass('animated');
} else if($(".box2").hasClass('animated')){
$(".box2").css('width', '60px');
$(".box2").removeClass('animated');
}
}
Примечание: это просто исправление того, что вы пытаетесь сделать, я бы предпочел переход css3 по этому вопросу.
Uncaught SyntaxError: Unexpected token .
ошибкуUncaught SyntaxError: Unexpected token .
работающая скрипка позволит легко решить проблемуanimated
классом ..