iman64 32 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 (ویرایش شده) سلام من میخوام این کد رو چند بار مثلا 4 بار در برگه قرار بدم <script type="text/javascript">function Ajax(){var xmlHttp;try{xmlHttp=new XMLHttpRequest();// Firefox, Opera 8.0+, Safari}catch (e){try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer}catch (e){ try{xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}catch (e){alert("No AJAX!?");return false;}}}xmlHttp.onreadystatechange=function(){if(xmlHttp.readyState==4){document.getElementById('ReloadThis').innerHTML=xmlHttp.responseText;setTimeout('Ajax()',10000);}}xmlHttp.open("GET"," http://www.damin.ir/news1/ ",true);xmlHttp.send(null);}window.onload=function(){setTimeout('Ajax()',10);}</script>قبلش بگم این کد خودش یه برگه دیگه رو فراخوانی میکنه حالا اگه دو بار از این کد توی یه برگه استفاده کنم فقط یه کد کار میکنه دومی کار نمیکنه چیکار کنم که اگه این کد رو دو یه سه بار در برگه استفاده کنم هر کدوم از کد ها به طور مجزا کار خودشون رو انجام بدند . ممنون ویرایش شده خرداد 93 توسط iman64 نقل قول لینک به ارسال
Mostafa 2587 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 سلام، خب شما یک تابع که بیشتر نمیتوانید تعریف کنید و آن هم Ajax هست.بهتره تابع Ajax را یکبار قرار دهید و آن را چندین بار فراخوانی کنید.<script type="text/javascript">function Ajax(){var xmlHttp;try{xmlHttp=new XMLHttpRequest();// Firefox, Opera 8.0+, Safari}catch (e){try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer}catch (e){ try{xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");}catch (e){alert("No AJAX!?");return false;}}}xmlHttp.onreadystatechange=function(){if(xmlHttp.readyState==4){document.getElementById('ReloadThis').innerHTML=xmlHttp.responseText;setTimeout('Ajax()',10000);}}xmlHttp.open("GET"," http://www.damin.ir/news1/ ",true);xmlHttp.send(null);}window.onload=function(){setTimeout('Ajax()',10);}window.onload=function(){setTimeout('Ajax()',10);}window.onload=function(){setTimeout('Ajax()',10);}window.onload=function(){setTimeout('Ajax()',10);}</script> 4 نقل قول لینک به ارسال
iman64 32 ارسال شده در خرداد 93 مالک گزارش بازنشر ارسال شده در خرداد 93 فرض کنید این کد در یه کادر اجرا میشه و در این کد یه برگه فراخوانیش میشه . حالا من میخوام چندین کادر با استفاده از هیمن کد درست کنم با این تفاوت در هر کادر اطلاعات برگه دیگری فراخوانی بشه مثلا میخوام در یکی از این کادر ها این برگه xmlHttp.open("GET"," http://www.damin.ir/news1/ ",true); و در کادر دیگری این برگه xmlHttp.open("GET"," http://www.damin.ir/news2/ ",true); فراخوانی بشه نقل قول لینک به ارسال
Mostafa 2587 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 چرا از جیکوئری استفاده نمیکنید؟!ابزارهای بهتر و بیشتر در اختیارتون قرار میده.Ajaxش هم پیشرفته تره. 1 نقل قول لینک به ارسال
iman64 32 ارسال شده در خرداد 93 مالک گزارش بازنشر ارسال شده در خرداد 93 ببینید مطالبی که وارد این کادر میشه به طور خودکار به روزرسانی میشه و مشکلی اصلا نداره فقط خواستم موضوعات رو زیاد کنم و کادر های با موضوعات متفاوتی داشته باشم چون سیستم سایتم خبری هست این کادر چون خودش به روزرسانی میشه مناسب هست اما فقط نیاز به کادر های بیشتری دارم که با این کد نمیشه فقط یه کادر اجرا میشه . پیشنهاداتی هم که دادین خوبه اما خب من وارد نیستم که باید از اول شروع کم که باز راه طولانی میشه . اما اگه با پیشنهاداتی که دادین میشه همچین کادر هایی ایجاد کرد خب مجبورم از اول شروع کنم . منتظر راهنماییاتون هستم نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 البته اینکار تاثیر خیلی زیادی روی بالا رفتن مصرف منابعتون داره که معمولا باعث می شه از طرف سرور ساسپند بشید اما اگر سرورتون اختصاصیه یا خیلی قویه می تونید همونطور که فرمودند به راحتی با آژاکس جی کوئری اینکار را بکنید 1 نقل قول لینک به ارسال
iman64 32 ارسال شده در خرداد 93 مالک گزارش بازنشر ارسال شده در خرداد 93 (ویرایش شده) روشی که خودم دارم استفاده میکنم هم از منابع زیادی استفاده میکنه؟خب با این حال من میخوام چند کادر ایجاد کنم ( به فرض 2 کادر نمونش رو در پیوست گذاشتم) داخل هر کادر هم همون کد های اسکریپتمون , البته با این تفاوت که هر کدوم از اسکیپتمون یه ادرس خاص فراخوانی میکنه . من که دو اسکریپت در یه برگه استفاده کردم نشد شاید جاگزاریش اشتباه بوده . اصلا ایا استفاده از دو اسکریپت شبیه هم امکان داره؟یا شاید کار دیگری باید کرد مثلا تابع رو یک بار استفاده کنیم و کاری کرد ادرس های زیادی فراخوانی کرد؟ منظورم این ادرس ها است xmlHttp.open("GET"," http://www.damin.ir/news1/ ",true);xmlHttp.open("GET"," http://www.damin.ir/news2/ ",true); ویرایش شده خرداد 93 توسط iman64 نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 نشانی آنلاین بگذارید روش شما بیشتر از جی کوئری منابع استفاده می کنه و البته منابع اصلی بخاطر مکرر شدن سئوالات بین دیتابیس و صفحه است تا جایی که می دونم خبرگزاری فارس هم اینکار را نمی کنه مگر روی تلکست که فلسفه اش متفاوته 4 نقل قول لینک به ارسال
Mostafa 2587 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 البته اگر از Ajax جیکوئری هم استفاده کنید، setTimeout را هم باید در سورس کدتان به کار ببرید.جیکوئری ابزارهای بهتر و آسانتری در اختیار شما قرار میدهد. 3 نقل قول لینک به ارسال
iman64 32 ارسال شده در خرداد 93 مالک گزارش بازنشر ارسال شده در خرداد 93 (ویرایش شده) از کد زیر استفاده کردم اما زیاد جالب نبود مطالب صفحه مورد نظر رو وقتی می اورد هر چند ثانیه محو میکنه .<script type="text/javascript">$(function() {setInterval(function() { $("<p/>").hide().load("/news/", function() { $(this).prependTo("#foo").fadeIn("slow"); });}, 15000);});</script>همون کد خودمون خب با کد زیر فراخوانی میشه<div id="ReloadThis" class=" sss1">در حال بارگزاری ... </div>گفته شد که یه بار تابع استفاده بشه و چندین بار فراخوانی بشه . خب ما با استفاده از id="ReloadThis"صفحه مورد نظر رو فراخوانی میکنیم صفحه مورد نظر هم در این کد xmlHttp.open("GET"," [url="http://www.damin.ir/news1/"]http://www.damin.ir/news1/[/url] ",true);وجود دارهخب میشه کد اصلیمون رو جوری تغییر بدیم که داخلش چندین لینک همراه با ایدی فراخوانی خاص بذاریم مثل این : xmlHttp.onreadystatechange=function(){if(xmlHttp.readyState==4){document.getElementById('ReloadThis').innerHTML=xmlHttp.responseText;setTimeout('Ajax()',10000);}}xmlHttp.open("GET"," http://www.damin.ir/news1/ ",true);xmlHttp.send(null);// وxmlHttp.onreadystatechange=function(){if(xmlHttp.readyState==4){document.getElementById('ReloadThis2').innerHTML=xmlHttp.responseText;setTimeout('Ajax()',10000);}}xmlHttp.open("GET"," http://www.damin.ir/news2/ ",true);xmlHttp.send(null);و در فراخوانی هم هر وقت اینو زدیم <div id="ReloadThis" class=" sss1">در حال بارگزاری ... </div> اصلاعات d="ReloadThis"بیاره و هر وقت اینو زدیم<div id="ReloadThis2" class=" sss1">در حال بارگزاری ... </div> اطلاعات صفحه مربوط به d="ReloadThis2" بیاره ویرایش شده خرداد 93 توسط iman64 نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در خرداد 93 گزارش بازنشر ارسال شده در خرداد 93 کد: <script type="text/javascript">$(function() {setInterval(function() { $(".example").load("/news/");}, 15000);});</script> 2 نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .