PDA

View Full Version : مشکل در کوچک و بزرگ کردن img



rsheytoonak
شنبه 03 خرداد 1393, 17:06 عصر
سلام
من کد زیر رو نوشتم که یه عکس رو وقتی یه بار روش کلیک شد hight , wight اون رو بزرگ کنه و وقتی دوباره کلیک شد کوچکشون کنه ولی قسمت else if کد کار نمیکنه میشه راهنماییم کنید

$(".image").click(function() {
var i = 0;
if (i % 2 == 0)
$(".paper").css({ left: "200px", width: "1000px", height: "700px" });
else if (i % 2 != 0)

$(".paper").css({ left: "200px", width: "100px", height: "100px" });


i++;

});

mehdi.mousavi
پنج شنبه 15 خرداد 1393, 10:36 صبح
سلام من کد زیر رو نوشتم که یه عکس رو وقتی یه بار روش کلیک شد hight , wight اون رو بزرگ کنه و وقتی دوباره کلیک شد کوچکشون کنه ولی قسمت else if کد کار نمیکنه میشه راهنماییم کنید.

سلام.
از اونجاییکه Scope متغیر i در واقع Anonymous Function ای میشه که بعنوان Click Handler به Click پاس کرده اید، i با هر بار Click صفر میشه. در نتیجه همیشه i%2 برابر صفر خواهد بود. برای رفع مشکل، i رو خارج از تابع مزبور باید تعریف کنید. حتی نیازی به استفاده از Counter برای اینکار نیست. شما کافیه متغیر boolean ای داشته باشید که بر اساس اون بتونید تصمیم بگیرید که تصویر باید کوچک بشه یا بزرگ:

$(function() {
var enlarge = false;
$('#myImg').click(function(){
var img = $(this);
if(enlarge){
img.css({ width: 538, height: 190 });
}
else{
img.css({ width: 269, height: 95 });
}

enlarge = !enlarge;
}).click();
});

موفق باشید.

پ.ن.: myImg در واقع id ی image ای هستش که در HTML تعریف کرده اید.

aroshanzamir
پنج شنبه 15 خرداد 1393, 11:30 صبح
سلام آقای موسوی :


var enlarge = false;
$('#myImg').click(function(){
var img = $(this);
if(enlarge){
img.css({ width: 538, height: 190 });
}
else{
img.css({ width: 269, height: 95 });
}

enlarge = !enlarge;
}).click();



کلیک آخری را برای چی نوشتید ؟

ممنونم

mehdi.mousavi
پنج شنبه 15 خرداد 1393, 16:50 عصر
سلام آقای موسوی کلیک آخری را برای چی نوشتید ؟ ممنونم

سلام.
برای اینکه وقتی Page برای اولین بار Load شد، تصویر در سایز کوچک نمایش داده بشه. اگر مایل باشید می تونید اونجا Click رو Call نکنید.

موفق باشید.