PDA

View Full Version : سوال: اسلاید شو اجاکس



kaveh0918
سه شنبه 28 تیر 1390, 04:17 صبح
سلام. من خواستن یه اسلایدر ای جکس (اجاکس) بسازم که خودش هر 3 ثانیه اسلاید ها رو عوض کنه.
آدرس اسلاید های من test.php?t=1 و test.php?t=2 و test.php?t=3 هست.
می خوام طوری باشه که بعد از اسلاید test.php?t=3 دوباره به test.php?t=1 برگرده.
من به زبان جاوا تسلط کافی ندارم یه مقداریش رو نوشتم. لطفا در توسعه کد کمک کنید.

صفحه اسلایدر


<html>
<head>
<script type="text/javascript">function mp(){loadXMLDoc('test.php?t=2')}setTimeout("mp()",3000)</script>

<script type="text/javascript">
function loadXMLDoc(url)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET",url,false);
xmlhttp.send(null);
document.getElementById('test').innerHTML=xmlhttp. responseText;
}
</script>
</head>
<body>

<div id="test"><?php include("test.php");?></div>

</body>
</html>
صفحه اسلاید ها


<?php if(!isset($_REQUEST['t'])){
}else $t=$_REQUEST['t']; ?>
<?php if(!isset($_REQUEST['t']) || $_REQUEST['t']=="1") { ?>11t11<img src="/1.jpg"><?php } ?>
<?php if($_REQUEST['t']=="2") { ?>22t22<img src="/2.jpg"><?php } ?>
<?php if($_REQUEST['t']=="3") { ?>33t33<img src="/3.jpg"><?php } ?>

Mr FTHEL
سه شنبه 28 تیر 1390, 12:24 عصر
<html>
<head>
<script language="javaScript">
var x=0
function changeimages()
{
window.setInterval("changeimage()", 3000)


}

function changeimage()
{
++x
if (x==4)
{
x=0
}

var imageRef= document.images[0]
imageRef.src= "LINK"+x+".jpg"

}

</script>
</head>

<body onload="changeimages(3000)">
<p align="center" >
<img id="changeme" src="aa0.jpg">
</p>

</body>
</html>



یک فولد بسازید عکس هارو بریزید توش و توی کد لینک بدید ;)

kaveh0918
چهارشنبه 29 تیر 1390, 01:39 صبح
دوست عزیز ممنون ولی مثل اینکه منظورم بنده رو درست متوجه نشدید.
اسلاید های من کد ها PHP هستند نه عکس. من کد های بالا رو برای مثال گذاشتم.
توی صفحه اسلایدر کد زیر


<script type="text/javascript">function mp(){loadXMLDoc('test.php?t=2')}setTimeout("mp()",3000)</script>

بعد از 3 ثانیه اجاکس loadXMLDoc رو به url ه test.php?t=2 می بره حالا می خوام طوری این کد توسعه پیدا کنه که دوباره بعد از 3 ثانیه اجاکس loadXMLDoc رو به url ه test.php?t=3 ببره و بعد به test.php?t=1 و بعد به test.php?t=2 و دوباره از اول.
ضمناً صفحه نباید رفرش شه. امیدوارم متوجه شده باشین. اساتید محترم ممنون میشم راهنمایی کنید.

Mr FTHEL
چهارشنبه 29 تیر 1390, 21:00 عصر
خوب دوست عزیز به جای عکس url هاتونو بزارید یعنی کد
var imageRef= document.images[0] imageRef.src= "LINK"+x+".jpg"رو متناسب با خواستتون عوض کنید

kaveh0918
جمعه 31 تیر 1390, 03:02 صبح
دوست عزیز من که گفتم اطلاعات من در مورد جاوا پاینه. کد رو مقداری دستکاری کردم که کد زیر شد. ولی کارنکرد.

<html>
<head>
<script language="javaScript">
var x="0"
function aaa()
{
window.setInterval("bbb()", 3000)
}
function bbb()
{
++x
if (x==4)
{
x=0
}
var divRef= loadXMLDoc()[0] divRef.src= "test.php?t="+x
}

function loadXMLDoc(url)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET",url,false);
xmlhttp.send(null);
document.getElementById('test').innerHTML=xmlhttp. responseText;
}
</script>

</head>

<body onload="aaa(3000)">
<div id="test"><?php include("test.php");?></div>
</body>
</html>اگر اشتباه نکنم مشکل در خط
var divRef= loadXMLDoc()[0] divRef.src= "test.php?t="+x
هست. به هر حال هر کاری کردم نشد، اگر امکانش هست زحمتش رو بکشید. پیشاپیش سپاسگذارم.