32 پست در این موضوع قرار دارد

سلام

من یک سایت خبری دارم.

میخوام اخبار را به صورت زنده و لحظه ای نشون بدم.

تو اینترنت جستجو کردم و بالاخره تونستم این کار را بکنم.

اما مشکلی که داره خبرها به صورت ساده اضافه میشوند.

من میخوام وقتی خبر جدیدی اضافه میشه اول background خبر مثلا قرمز باشه و بعد از چند ثانیه به سفید تغییر کنه.

این بخش اخبار زنده سایت منه : http://khabargir.ir/live_news.html

اینها هم نمونه هایی است که در سایت های دیگه دیدم :

http://www.khabarpu.com/pu/zendeh-pu

http://tnews.ir

اگر کسی بتونه کمکی کنه یا بگه حداقل در اینترنت چی باید جستجو کنم ممنون میشم.

التماس دعا

به اشتراک گذاری این پست


لینک به پست

مشکلتون فقط اختصاص یک پس زمینه خاص و بعد تغییر اون هست؟

به اشتراک گذاری این پست


لینک به پست

مشکلتون فقط اختصاص یک پس زمینه خاص و بعد تغییر اون هست؟

فعلا بله ....

به اشتراک گذاری این پست


لینک به پست

ببینید شما نیاز دارید که با ایجاکس (یا موارد مشابه) کار کنید

که وقتی آدرس جدید اضافه شده در استایل بهش یک رنگ بدید

بعدمثلا با تابع setinterval بعد چند ثانیه بهش رنگ معمولی بدید

به اشتراک گذاری این پست


لینک به پست

یعنی باید وقتی لینک ساخته میشه بهش یک id یا کلاس با رنگی که میخوام بدم.

و بعد با تابع

setinterval رنگ اون id یا class را تغیییر بدم.

اینو امتحان کردم. رنگ زمینه سریع عوض میشه.

این یک نمونه است که با جاوا اسکریبت توسط مدیر سایت

وبگو برای من ساخته شده است :


<style type="text/css">
.new{
height:30px;
margin:4px;
background:#FFF;
background:
}
.old{
height:30px;
margin:4px;
background:#CCC;
}
</style>
<script type="text/javascript">
function ChangeColor(id, frame){
var color = '#CCC';
switch(frame){
case 1:
color = "#FFECEC";
break;
case 2:
color = "#FDD";
break;
case 3:
color = "#FFC6C6";
break;
case 4:
color = "#FFB3B3";
break;
case 5:
color = "#FF9F9F";
break;
case 6:
color = "#FF9393";
break;
case 7:
color = "#FF8282";
break;
case 8:
color = "#FF6F6F";
break;
case 9:
color = "#F55";
break;
case 10:
color = "#FF2F2F";
break;
}
if(frame <= 10){
frame++;
document.getElementById(id).style.backgroundColor = color;
setTimeout("ChangeColor('" + id + "', " + frame + ");", 100);
}
if(frame == 11){
setTimeout("ChangeColor('" + id + "', " + 12 + ");", 1000);
}
if(frame == 12){
document.getElementById(id).style.backgroundColor = color;
}
}
</script>
<div class="old" id="new">خبر جدید</div>
<div class="old">خبر قدیمی</div>
<div class="old">خبر قدیمی</div>
<div class="old">خبر قدیمی</div>
<script type="text/javascript">
ChangeColor('new', 0);
</script>[/right]

[/color]
[color=#282828]

[right]

اگر اینو به jquery تبدیل کنید ممنون میشم.

به اشتراک گذاری این پست


لینک به پست

شما مگه نمی خواهی هر مطلبی منتشر شد بعد ازچند ثانیه تغییر استایل بده اینهمه کد نمی خواد که

این را داخل حلقه بگذار


function myFunction()
{
setTimeout(function(){document.getElementById('post<?php the_id();?>').className='class2'},5000);
}
myFunction()

و به لایه مطلب هم آی دی


post<?php the_id(); ?>

بده

دمو

http://jsfiddle.net/bUFCR/

به اشتراک گذاری این پست


لینک به پست

سلام

این درسته و کار میکنه.

مشکل اینجاست که یک دفعه تغییر رنگ میدهد.

من میخوام از مثلا قرمز پررنگ به سفید به اهستگی تغییر رنگ بدهد.

به اشتراک گذاری این پست


لینک به پست


.class1,.class2 {
-moz-transition: all 1.5s linear .2ms;
-o-transition:all 15s linear .2ms;
-webkit-transition: all 1.5s linear .2ms;
transition: all 1.5s linear .2ms;
}

با تغییر 1.5s زمان تغییر رنگ و با تغییر .2ms زمان توقف قبل از اجرای دستور کم و زیاد می شند (کد css)

اگر منظورتون اینه که 5 ثانیه قرمز باشه 5 ثانیه آبی باشه 5 ثانیه سبز همون کد js را برای سه زمان مورد نظر و سه کلاس متفاوت قرار بدید

به اشتراک گذاری این پست


لینک به پست

خیلی ممنون.

فعالا سایت بهم ریخته.

بعد از رفع مشکل امتحان میکنم و نتیجه را اطلاع میدهم.

به اشتراک گذاری این پست


لینک به پست

امتحان کردم ... نشد !!!

css


<style>
.new {
background:#FF0000;
}
.old {
background:#fff;
}
.new,.old {
-moz-transition: all 1.5s linear .2ms;
-o-transition:all 15s linear .2ms;
-webkit-transition: all 1.5s linear .2ms;
transition: all 1.5s linear .2ms;
}
</style>

کد php که با آجاکس رفرش میشود :


<?php
require_once('core/connect.php');
$cvw=mysql_query("select * from post order by id DESC limit 100");
while($raw=mysql_fetch_array($cvw))
{
$id=$raw['id'];
$d=$raw['date'];
echo '<li><i class="icon"></i><a id="news'.$id.'" class="new" href="http://khabargir.ir/'.$raw['surl'].'" title="'.$raw['title'].' | '."خبرگیر".'">'.make_safe(max_title_lenght($raw['title'])).'</a>';
echo '<span>'.publish_date($d).'</span></li>'."\n";
}
?>
<script>
function myFunction()
{
setTimeout(function(){document.getElementById('news<?php $id;?>').className='old'},5000);
}
myFunction()
</script>

به اشتراک گذاری این پست


لینک به پست

تو صفحه ی آژاکسی باید کدjs رو هم به آژاکس بدید

یا کد اسکریپت را به صورت زمینه دلخواه در مطالب بگذارید که همزمان با اجرای آژاکس اونها هم اجرا بشند

یک کار دیگه هم که می تونید بکونید استفاده از تایم استامپ است و مقایسه زمان انتشار و زمان حاضر و برای زیر مثلا 5 دقیقه یک استایل بدید و برای مابقی یک دیگه ولی می دونید که همچین محاسباتی یک سرور و هاستینگ خیلی قدرتمند می خواد معمولا اینکار ها را صاحبان سرور های گردن کلفت برای نشان دادن خودشان بین رقبا انجام می دهند

سرویس های عادی که با منابع معمول وردپرس مشکل دارند در این مواقع منفجر می شند

به اشتراک گذاری این پست


لینک به پست

سلام

الان با راهنمایی های که کردین درست شد.

فقط یک مشکل داره و اون اینه که فقط برای لینک آخر کار میکنه ....

مثلا اگر 4 تا لینک جدید ارسال شود ، فقط آخرین لینک تغییر رنگ میدهد.

لطفا راهنمایی کنید ؟

http://khabargir.ir/live_news.html

به اشتراک گذاری این پست


لینک به پست

لطفا اسپم نکنید

صبر کنید اگز جناب فخار وقت داشتن پاسختون رو بدن

به اشتراک گذاری این پست


لینک به پست

این کد باید داخل حلقه باشه


<script>
function myFunction()
{
setTimeout(function(){document.getElementById('news<?php $id;?>').className='old'},5000);
}
myFunction()
</script>

یعنی بعد از


while()

و قبل از


endwhile;

به اشتراک گذاری این پست


لینک به پست

سلام

این کار رو امتحان کردم.

فرقی نکرد.

من تقریبا میدونم باید چیکار کنم اما برنامه نویسی jquery زیاد بلد نیستم.

مشکل اینجاست که کوئری select که اخبار رو نشون میده داخل یک فایل ریختم و با آژاکس هر چند ثانیه فایل رو لود میکنم.

هر بار که فایل لود میشه تمام استایل ها به حالت اول برمیگردند.

باید جوری باشه که محتوای فایل را بخونه و خبرهای جدید را به صفحه اضافه کنه و قابل تغییر نباشه.

فکر کنم با تابع append یا html بشه این کار را کرد.

اما کار با این 2 تابع رو بلد نیستم.

اگر میشه راهنمایی کنید ....

به اشتراک گذاری این پست


لینک به پست

با تابع addClass امتحان کنید به این صورت

لایه اصلی هر پست را تبدیل کنید به


<div class="post" data="<?php echo get_the_date('mdH');?>">

و


<script type="text/javascript">
$(".post").filter(function() {
var $data = $(this).attr("data");
if ($data==<?php Date('mdH');?>)
$(this).addClass("hilight");
else
$(this).removeClass("hilight");
});
</script>

که قاعدتا باید مطالبی که کمتر از یک ساعت از انتشارشان می گذرد را فیلتر کند و کلاس های لایت بدهد و از باقی کلاس را حذف کند

کد را تست کنید و نتیجه را بفرمایید

منظورتون رو از کاری که می خواهید با با تابعی که گفتید بکنید بفرمایید کدش را می گذارم

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

به اشتراک گذاری این پست


لینک به پست

سلام

این یکی هم نشد.

هر چند ثاینه یک پست ارسال میشود.

این سایت رو ببینید :

http://tnews.ir

دقیقا این کاری که من میخوام را داره انجام میدهد.

من منظورم از تابع هایی که گفتم این بود :

با جی کوئری به هر روشی که میشه به دیتابیس وصل بشیم.

برای بار اول >

100 تا رکورد آخر را واکشی کنیم.

شماره آخرین رکورد ذخیره کنیم.

رکورد های واکشی شده را با تابع

append

یا html در جی کوئری به محتوای صفحه اضافه کنیم.

برای بار دوم به بعد >

از آخرین شماره رکورد گرفته شده به آخر را واکشی کنیم.

نمیدونم منظورم منو فهمیدید یا نه ...

اصلا به هر روشی که میشه این کار رو انجام داد و مشکلات فعلی رو نداشته باشه آموزش بدید...

تشکر

به اشتراک گذاری این پست


لینک به پست

خوب کد را برای ثانیه تنظیم کنید


<script type="text/javascript">
$(".post").filter(function() {
var $data = $(this).attr("data");if ($data==<?php Date('mdHi');?>)
$(this).addClass("hilight");
else
$(this).removeClass("hilight");
});
</script>

و


<div class="post" data="<?php echo get_the_date('mdHi');?>">

این کد برای هر یک دقیقه باید کار کنه

اگر کلیت فرم کار کرد بگید برای چند ثانیه می خواهید تا کدش را بگذارم

به اشتراک گذاری این پست


لینک به پست

چرا این یک i اضافه داره که یعنی دقیقه

سایتی که لینک دادید با این کد هر سه ثانیه رفرش می کنه و همیشه اولین پستش رنگش فرق می کنه


<script type="text/javascript">
$(document).load(function () {
window.setInterval("refresh();", 300000);
});</script>

برای تغییر استایل اولین پست هم کافیه در style.css اضافه کنید


.post
{
استایل همه مطالب
}
.post:nth-child(1) {
استایل مطلب اول
}

به اشتراک گذاری این پست


لینک به پست

سلام

اینم کار نکرد.

میخواید دسترسی بهتون بدم خودتون امتحان کنید و بعد نتیجه را اینجا بذارید ؟

به اشتراک گذاری این پست


لینک به پست

نه دسترسی ننمی خواد

شما باید تست کنید تا به کد همخون با کدهای سایتتون برسید در واقع من هم باید همین کار را بکنم چون کار کردن یا نکردن کد فقط به کد نویسی سایت شما مربوط می شه و کدها را در html قبلا تست می کنم

کد زیر در footer.php


<script type="text/javascript">
$(document).ready(function() {
setTimeout(function(){
location.reload()},10000);
});

</script>

و این کدها در css


.post {
background: #EEE;
border: 1px #aaa solid;
display: block;
width: 50%;
padding: 10px 5%;
margin: 2px 20%;
-khtml-border-radius: 4px;
-moz-border-radius: 4px;
-webkit-border-radius: 4px;
border-radius: 4px;
-moz-transition: all 1s linear .2s;
-o-transition: all 1s linear .2s;
-webkit-transition: all 1s linear .2s;
transition: all 1s linear .2s;
}
.post:first-child,.post:first-child a {
background:#FF3300;
color:#fff;
}

اول با همین دو کد تست کنید اگر کار نکرد

به header.php


<script src="http://code.jquery.com/jquery-latest.js"></script>

اضافه کنید توجه کنید کد در صورتی کار می کنه که سایت کاملا لود بشه یعنی آی فریم پلاس وان و فیس بوک نداشته باشید یا با وی پی ان چک کنید

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • مشکل نمایش پارالاکس پس زمینه در مرورگر Explorer
      توسط hessam75
      سلام
      من یه سایت با غالب be theme طراحی کردم فقط یه مشکل داره اونم اینه که پس زمینه رو پارالاکس انتخاب کردم ولی تو مرورگر internet xplorer پارالاکس نمایش داده نمیشه!
      در ضمن قالبم هم پول دادم از سایت معتبری خریدم ازین دانلودی ها نیست.
      لطفا کمک کنید بتونم رفع اشکال کنم.
      آدرس سایت : senateb.com
       
    • عدم نمایش یک دسته خاص دز نتایج جستجوی سایت وردپرسی
      توسط mehdiilbeigi
      سلام به دوستان عزیز
      من توی سایتم یک دسته اخبار سایت دارم که نمی خوام توی نتایج جستجوی سایت نمایش داده بشه.
      ممنون میشم کمکم کنید چطوری این دسته رو توی نتایج سایتم نمایش نده...
       
    • قوانین کلی انجمن
      توسط Morteza
      قوانین کلی انجمن
      1- در هنگام ثبت نام از کلمات مناسب جهت نام کاربری استفاده نمایید. نام های کاربری حاوی کلمات نامناسب ، نام های کاربری که جنبه تبلیغاتی داشته و یا نام های کاربری که نام یک سایت می باشند ، سریعا حذف خواهند شد.
      2- به دیگران احترام بگزارید. با هرگونه بی احترامی برخورد جدی و حتی منجر به قطع دسترسی کاربر خاطی خواهد شد.
      3- در انتخاب آواتر و امضا دقت کنید و از تصاویر و کلمات موهون و نامناسب استفاده ننمایید. توجه کنید که امضا هایی که حاوی تصاویر و کلمات موهون و نامناسب باشند و یا جنبه تبلیغاتی داشته باشند سریعا حذف خواهند شد و در صورت تکرار با فرد خاطی برخورد خواهد شد.
      4- برای مطالب خود از عنوان مناسب و گویا استفاده نمایید. در عنوان مطالب خود از عبارات و کلمه هایی مانند : کمک کنید ، درخواست فوری ، نیاز شدید ، تورو خدا کمکم کنید ، خیلی مهم و جملاتی شبیه به این خودداری نمایید.
      5- حتما قبل از ایجاد یک موضوع در انجمن جستجو کنید و از ایجاد مطالب تکراری خودداری نمایید.
      6- از اسپم کردن موضوعات پرهیز کنید. جهت دریافت پاسخ صبر داشته باشید. برای تشکر از دکمه تشکر استفاده کنید.
      7- فارسی بنویسید و از فینگلیش نوشتن خودداری کنید. در غیر اینصورت با فرد خاطی برخورد خواهد شد.
      8- فعالیت های تجاری را فقط در بخش مشخص شده انجام دهید و از ایجاد موضوعاتی با جنبه تجاری در دیگر بخشها خودداری نمایید. از دادن پاسخهایی که جنبه تجاری و یا تبلیغی دارند خودداری نمایید. در صورت مشاهده چنین پست هایی با فرد خاطی برخورد خواهد شد.
      9- گروه وردپرس پارسی هیچگونه مسئولیتی در مورد فعالیت های بخش تجاری ندارد و تمامی مسئولیت به عهده ایجاد کننده موضوع است.
      10-هرگونه بحث سیاسی - مذهبی در این انجمن ممنوع می باشد. هرگونه توهین و مجادله و مباحثه در مباحث دینی و سیاسی ممنوع بوده و تاپیک های اینچنینی حذف و کاربران خاطی محروم می شوند. در صورت تکرار فرد خاطی برای همیشه از انجمن اخراج می شود.
      11- ارائه شماره تماس و ایمیل جهت همکاری و یا خرید و فروش و یا هرگونه مورد دیگر بصورت عمومی در انجمن ممنوع است. جهت تبادل موارد ذکر شده از طریق پیام خصوصی اقدام کنید.
      12- هرگونه درخواست کامل سازی پوسته در انجمن ممنوع است. اگر نیاز به تکمیل کد بخش خاصی از پوسته را دارید باید درخواست خود را در یک تاپیک جدید مطرح کنید و از درخواست تکمیل کدنویسی و یا طراحی یک پوسته جدا خودداری کنید.
      13- هرگونه بحث در مورد تکمیل و اشکال زدایی پوسته های ریپ در انجمن ممنوع است. اگر نیاز به تکمیل کد بخش خاصی از پوسته را دارید باید درخواست خود را در یک تاپیک جدید مطرح کنید و از درخواست تکمیل کدنویسی و یا طراحی یک پوسته ریپ جدا خودداری کنید.
      14- هرگونه پرسش و بحث درباره محصولهای تجاری در انجمن ممنوع است. پشتیبانی محصولهای تجاری به عهده سازنده/فروشنده آن است.
      بروزرسانی پنجم.
    • مشکل نمایش تمام تاریخ ها به تاریخ روز در wp-parsidate
      توسط omidba
      سلام دوستان
      مشکل من اینه که از وقتی افزونه parsidate رو نصب کردم و کد هاش رو استفاده کردم تمام تاریخ ها رو به تاریخ روز نشون میده و نمیدونم مشکلش رو چطور میتونم برطرف کنم
      اینم یه نمونه از کدی که مشکل داره:
      <p class="date"><?php the_time(parsidate('j F Y')); ?></p>  
    • عدم ورود به پنل
      توسط 9074020
      وقتی می خوام وارد صفحه پنل ورد پرس شوم نمی تونم ای پیغام نمایش داده میشه:
      W3 Total Cache Error: some files appear to be missing or out of place. Please re-install plugin or remove /home/kasair/public_html/wp-content/advanced-cache.php.
      Warning: Cannot modify header information - headers already sent by (output started at /home/kasair/public_html/wp-content/advanced-cache.php:23) in /home/kasair/public_html/wp-includes/pluggable.php on line 1167
      لطفا راهنمایی کنید