مشکل در شیفت دادن عکس ها به سمت چپ یا راست
سلام دوستان خسته نباشید
من دارم یه تابع مینویسم که یه آرایه از عکس ها رو بگیره و اون ها رو با استفاده از دکمه چپ و راست و با استفاده از پوزیشن اون ها جابه جا کنه اما این دستور تو کد من کار نمیکنه اصلا نمیدونم چرا؟ میشه راهنماییم کنین؟
Kala[i].style.right = temp;
این هم کد کامل تابع
function Slide_Left()
{
var Kala = document.getElementsByClassName( "Pishnahad_Kala" );
var temp;
//if ( Kala[0].style.right != "0px" )
if ( Move_Left != 220 )
{
Move_Left++;
for ( var i = 0; i < Kala.length; i++ )
{
temp = '';
for ( var j = 0; j < Kala[i].style.right.length; j++ )
if ( Kala[i].style.right[j] == 'p' )
{
break;
}
else
{
temp += Kala[i].style.right[j];
}
Kala[i].style.right = temp;
window.alert(temp);
Kala[i].style.right = +Kala[i].style.right + Move_Left + 'px';
window.alert(Kala[i].style.right);
}
setTimeout( Slide_Left, 5 );
}
}
نقل قول: مشکل در شیفت دادن عکس ها به سمت چپ یا راست
شما باید کارتون رو دیباگ کنید که اولا kala[i]چی داخلش هست و همچنین مقدار temp چی هست
نقل قول: مشکل در شیفت دادن عکس ها به سمت چپ یا راست
نقل قول:
نوشته شده توسط
parvizwpf
شما باید کارتون رو دیباگ کنید که اولا kala[i]چی داخلش هست و همچنین مقدار temp چی هست
چک کردم ظاهرا همه چی درسته kala[i] هربار به یکی از عکس ها اشاره میکنه temp هم بعد از اجرای اون حلقه درست میشه یعنی مثلا قبل از اجرای حلقه 20px بوده بعد از حلقه میشه 20. که بعدش با اون مقادیری که میخوام جمع میکنم و در انتها 'px' رو بهش اضافه میکنم.
با این دستور مقدار temp رو میبینم درسته window.alert(temp);
و با این دستور window.alert(Kala[i].style.right);
مقدار پوزیشن رایت کالا رو میبینم که همون مقدار قبلیه. دقیقا بعد از این که temp رو توش میریزم هم مقدار پوزیشن رایت رو چاپ میکنم با همون مقدار اولیه ش برابره هیچ تغییری نمیکنه!
نقل قول: مشکل در شیفت دادن عکس ها به سمت چپ یا راست
این شکلی نوشتم درست شد :لبخند:
temp = +temp + Move_Left;
Kala[i].style.right = temp + 'px';