PDA

مشاهده نسخه کامل : ساعتهای زنده دنیا



leili1
29-08-08, 22:37
سلام من کد ساعتهای زنده دنیا رو با استایلی که در عکس زیر مشخص کردم می خوام

با تشکر

Shahryar
30-08-08, 01:33
یک مثال از سایت هایی که استفاده کردند را بده ...

leili1
30-08-08, 09:30
Only the registered members can see the link

Shahryar
30-08-08, 12:52
Only the registered members can see the link

این طور که من بررسی کردم این مربوط به سیستم سایت هست و کد جاوا نیست . برای همین خیلی امیدوار نباش عینش را بتونی پیدا کنی ... :great: با این وجود من بازم برات میگردم ولی بهتره کسی را پیدا کنی برات بنویسه .

green_waves
30-08-08, 12:55
نمیشه از ساعت سرور به عنوان یک مرجع استفاده کرد ؟

ravegoat
30-08-08, 23:37
با سلام!

من تونستم یه کد جاوا اسکریپت برای این نوع ساعت بسازم. وقتی کد رو تست کردم مشکلی نداشت ولی احتمال داره یه سری مشکل توش وجود داشته باشه.

من اصلا توی JS و HTML خوب نیستم برای همین از دوستان خواهش می کنم به این فایل یه نگاهی بندازن، شاید بشه که کد رو بهینه کرد.:wink:

Only the registered members can see the link

یک کیلوبایت
لینک مستقیم

امیدوارم این فایل مشکلتونو حل کنه.
اگر کد جاوا مشکلی داره، توضیحی در مورد کد می خواهید و یا باید کد جاییش تغییر کنه (مثل نام شهر ها) دوستان و بنده در خدمتیم.:yes:

با سپاس
آرمین:11():

leili1
31-08-08, 22:53
آقایون باهوش بفرمائید اینم کد ساعتها البته این دوستمون زحمتش رو کشیدن .و فقط چند ثانیه اختلاف داره ... با تشکر





<!--<html>-->
<!--<head>-->
<!--</head>-->
<!--<body>-->
<form name="where">
<tr>
<td width="100%">
<select name="city" size="1" onchange="updateclock(this);">
<option value="" selected>local time</option>
<option value="0">london gmt</option>
<option value="1">rome</option>
<option value="3.5">tehran</option>
<option value="7">bangkok</option>
<option value="8">hong kong</option>
<option value="9">tokyo</option>
<option value="10">sydney</option>
<option value="12">fiji</option>
<option value="-10">hawaii</option>
<option value="-8">san francisco</option>
<option value="-5">new york</option>
<option value="-3">buenos aires</option>
</select><p> </td></tr><tr><td width="100%">
<script language="javascript" link="Only the registered members can see the link">
if (document.all||document.getelementbyid)
document.write('<span id="worldclock" style="font:bold 16px arial;"></span><br>')
zone=0;
isitlocal=true;
ampm='';
function updateclock(z){
zone=z.options[z.selectedindex].value;
isitlocal=(z.options[0].selected)?true:false;
}
function worldclock(){
now=new date();
ofst=now.gettimezoneoffset()/60;
secs=now.getseconds();
sec=-1.57+math.pi*secs/30;
mins=now.getminutes();
min=-1.57+math.pi*mins/30;
hr=(isitlocal)?now.gethours():(now.gethours() + parseint(ofst)) + parseint(zone);
hrs=-1.575+math.pi*hr/6+math.pi*parseint(now.getminutes())/360;
if (hr < 0) hr+=24;
if (hr > 23) hr-=24;
ampm = (hr > 11)?"pm":"am";
statusampm = ampm.tolowercase();
hr2 = hr;
if (hr2 == 0) hr2=12;
(hr2 < 13)?hr2:hr2 %= 12;
if (hr2<10) hr2="0"+hr2
var finaltime=hr2+':'+((mins < 10)?"0"+mins:mins)+':'+((secs < 10)?"0"+secs:secs)+' '+statusampm;
if (document.all)
worldclock.innerhtml=finaltime
else if (document.getelementbyid)
document.getelementbyid("worldclock").innerhtml=fi naltime
else if (document.layers){
document.worldclockns.document.worldclockns2.docum ent.write(finaltime)
document.worldclockns.document.worldclockns2.docum ent.close()
}
settimeout('worldclock()',1000);
}
window.onload=worldclock
</script><ilayer id="worldclockns" width=100% height=35></p>
<layer id="worldclockns2" width=100% height=35 left=0 top=0 style="font:bold 16px arial;"></layer></ilayer>
</td>
</form>
<!--</body>-->
<!--</html>-->

ravegoat
01-09-08, 09:00
و فقط چند ثانیه اختلاف داره ...


با سلام!

من از روش خوبی برای به روز کردن ساعت ها استفاده نکردم:



<script language="Javascript">
function reload() {
window.location.reload()
}
setTimeout("reload()", 60000);
</script>
دلیل این چند ثانیه اختلاف اینه که صفحه هر 60000 میلی ثانیه (معادل یک دقیقه) یک دفعه بارگذاری میشه. حالا اگر 60000 تبدیل بشه به 1000 ، صفحه هر ثانیه بارگذاری میشه که البته این کار مشکلاتی رو به وجود میاره. فکر نمی کنم اون مقدار اختلاف زیاد مهم باشه.:cool:

در ضمن من در اجرا کردن کد شما در بالا مشکل دارم. فکر کنم یه سری مشکل تو توابع JS داشته باشه. شاید فقط من این مشکل رو داشته باشم.:1. (38): خواستید کد های شبیه این رو هم براتون می ذارم.:wink:

با سپاس
آرمین:11():

leili1
01-09-08, 11:17
با تشکر فعلا این اسکریپت خوب کار می کنه و چند ثانیه هم زیاد مهم نیست فعلا

فقط یه چیزی من شهری زیر رو میخوام اگه امکان داره این شهرها رو روی کد ها ست کنین

نیویورک - لندن - ایران -توکیو -

لطفا به همین ترتیب از چپ به راست باشه یعنی تو ساعتها نیویورک اول و ...

ravegoat
01-09-08, 15:19
فقط یه چیزی من شهری زیر رو میخوام اگه امکان داره این شهرها رو روی کد ها ست کنین

نیویورک - لندن - ایران -توکیو -

لطفا به همین ترتیب از چپ به راست باشه یعنی تو ساعتها نیویورک اول و ...

با سلام!

بفرمایید اینم کدش



<html>
<head>
<script type="text/javascript">
here_offset = 0;
can_use_this = false;
if(parseInt(navigator.appVersion) >= 4) { can_use_this = true; }
vtime = new Date();
Diff = vtime.getTimezoneOffset() - here_offset;
function get_current(s) {
if(can_use_this == false) { return ''; }
if (s == 'teh')
{
htime = new Date();
var hr = htime.getHours() + (Diff / 60) + 3.5;
var mint = (hr - Math.floor(hr)) * 60;
hr = Math.floor(hr);
if ( hr > 23) { hr = hr - 24;}
if ( hr < 0) { hr = hr + 24;}
var mini = htime.getMinutes() + mint;
if (mini > 59)
{
hr += 1;
mini -=60;
}
if (mini < 10) {mini = "0" + mini;}
rs = hr + ':' + mini;
}
if(s == 'gmt')
{
htime = new Date();
var hr = htime.getHours() + (Diff / 60);
var mint = (hr - Math.floor(hr)) * 60;
hr = Math.floor(hr);
if ( hr > 23) { hr = hr - 24;}
if ( hr < 0) { hr = hr + 24;}
var mini = htime.getMinutes() + mint;
if (mini > 59)
{
hr += 1;
mini -=60;
}
if (mini < 10) {mini = "0" + mini;}
rs = hr + ':' + mini;
}
if(s == 'york')
{
htime = new Date();
var hr = (htime.getHours() + (Diff / 60)) - 5;
var mint = (hr - Math.floor(hr)) * 60;
hr = Math.floor(hr);
if ( hr > 23) { hr = hr - 24;}
if ( hr < 0) { hr = hr + 24;}
var mini = htime.getMinutes() + mint;
if (mini > 59)
{
hr += 1;
mini -=60;
}
if (mini < 10) {mini = "0" + mini;}
rs = hr + ':' + mini;
}
if(s == 'tok')
{
htime = new Date();
var hr = (htime.getHours() + (Diff / 60)) + 8;
var mint = (hr - Math.floor(hr)) * 60;
hr = Math.floor(hr);
if ( hr > 23) { hr = hr - 24;}
if ( hr < 0) { hr = hr + 24;}
var mini = htime.getMinutes() + mint;
if (mini > 59)
{
hr += 1;
mini -=60;
}
if (mini < 10) {mini = "0" + mini;}
rs = hr + ':' + mini;
}
return rs;
}
</script>
</head>
<body>
<table border="0" width="100%" bgcolor="f1eee9">
<tr>
<td class="timebox">New York <img width=11 height=11 src=clock.gif>
<script language="JavaScript">
document.write(get_current('york'));
</script>
</td>
<td class="timebox">London <img width=11 height=11 src=clock.gif>
<script language="JavaScript">
document.write(get_current('gmt'));
</script>
</td>
<td class="timebox">Tehran <img width=11 height=11 src=clock.gif>
<script language="JavaScript">
document.write(get_current('teh'));
</script>
</td>
<td class="timebox">
Tokyo <img width=11 height=11 src=clock.gif>
<script language="JavaScript">
document.write(get_current('tok'));
</script>
</td>
</td>
</tr>
</table>
</body>
</html>


مشکلی بود دوستان و بنده در خدمتیم!:wink:

با سپاس
آرمین:11():