PDA

View Full Version : مخفی کردن چند لایه هنگام باز شدن صفحه



mahtab_m
دوشنبه 26 مرداد 1388, 23:13 عصر
سلام . من یه صفحه استاتیک ساده درست کردم که توش چند div قرار دادم .می خوام هنگام باز شدن صفحه همه این div ها مخفی باشند .برای همین کد زیر رو نوشتم.


<body onLoad="node1.style.display='none'; node2.style.display='none';>

ولی مشکلی که دارم اینه که هنگام لود شدن صفحه ابتدا همه لایه ها رو باز میکنه .بعد یه دفعه همه رو مخفی می کنه
من می خوام از همون اول که باز میکنه مخفی باشه
چی کار باید بکنم؟

ahmadbadpey
سه شنبه 27 مرداد 1388, 08:53 صبح
بهتره از jquery استفاده کنید . یکی از ویژگی های jquery اینه که منتظر نمیشه تا صفحه کامل بارگذاری بشه . توی jquery اینجوری کار می کنند :


$(document).ready(function (){
$('div').hide();
}
)

mahtab_m
چهارشنبه 28 مرداد 1388, 11:41 صبح
میشه یسشتر توضیح بدی؟

ahmadbadpey
چهارشنبه 28 مرداد 1388, 11:58 صبح
jquery یکی از کتابخانه های javascript است که طراحان وب بوسیله اون می تونند یکسری کارها را که به سختی و با کدنویسی زیاد توی javascript انجام می شد رو به راحتی و در چند خط انجام بدن .

یکی از ویژگی های jquery همینه که بالا گفتم . شما می تونید قبل از بارگذاری کامل صفحه یکسری عملیات رو ، روی element های صفحه انجام بدین . مثلا اون ها رو مخفی کنید ، ظاهر کنید ، یه کلاس به اون ها نسبت بدین و ... .

آشنایی شما با HTML و javascript چقده . شما می تونید تو اینترنت سرچ کنید و در باره jquery بیشتر بدونید .

eAmin
چهارشنبه 28 مرداد 1388, 21:03 عصر
سلام.

برای یک کار کوچیک بنظرتون استفاده از jQuery بهینه ست؟

یکی از ویژگی های jquery اینه که منتظر نمیشه تا صفحه کامل بارگذاری بشه .
خیر اینطور نیست، همین ready که شما استفاده کردید، کاملا صبر می کنه تا تمامی محتویات صفحه بارگزاری، و بعد از انجام اون کار تغییرات رو اعمال می کنه.

ahmadbadpey
پنج شنبه 29 مرداد 1388, 09:51 صبح
خیر اینطور نیست، همین ready که شما استفاده کردید، کاملا صبر می کنه تا تمامی محتویات صفحه بارگزاری، و بعد از انجام اون کار تغییرات رو اعمال می کنه.

این هم دلیل و مدرک :
Quicker Than window.onload (http://15daysofjquery.com/quicker/4/)

eAmin
پنج شنبه 29 مرداد 1388, 16:22 عصر
این هم دلیل و مدرک :
Quicker Than window.onload (http://15daysofjquery.com/quicker/4/)
حرف شما درسته، بنده اشتباه می کردم، ممنون:چشمک:
ولی بازم به نظر من استفاده از jQuery در اینکار کوجیک به صرفه نیست به جای jQuery می شه از این استفاده کرد. البته اگر خیلی اسرار دارید که قبل از همه چیز این کدها اجرا بشن:

// DF1.1 :: domFunction
// ************************************************** ***
// DOM scripting by brothercake -- http://www.brothercake.com/
// GNU Lesser General Public License -- http://www.gnu.org/licenses/lgpl.html
//************************************************** ****




//DOM-ready watcher
function domFunction(f, a)
{
var n = 0;

var t = setInterval(function()
{
var c = true;
n++;
if(typeof document.getElementsByTagName != 'undefined' && (document.getElementsByTagName('body')[0] != null || document.body != null))
{
c = false;
if(typeof a == 'object')
{
for(var i in a)
{
if
(
(a[i] == 'id' && document.getElementById(i) == null)
||
(a[i] == 'tag' && document.getElementsByTagName(i).length < 1)
)
{
c = true;
break;
}
}
}

if(!c) { f(); clearInterval(t); }
}

if(n >= 60)
{
clearInterval(t);
}

}, 250);
};