PDA

View Full Version : غیر فعال شدن لینک ها بعد از لود صفحه



mehrvarzan
دوشنبه 28 آذر 1390, 10:27 صبح
سلام
من یه اشکال توی برنامه نویسیم دارم.

دو موقیت دارم شماره یک و شماره دو
توی موقعیت شماره دو یه لینک هست که وقتی روش کلیک میشه یه تابع جی کوئری اجرا میشه.
وقتی صفحه شماره دو اجرا بشه مشکلی نداره و لینک کار میده ولی وقتی موقعیت شماره دو رو از طریق تابع .load به موقعیت شماره یک انتقال میدم دیگه لینک کار نمیده و وقتی روش کلیک میکنم تابع اجرا نمیشه.

هر کی میتونه بهم کمک کنه توروخدا دو سه روزه گیر همینم.. اگه نمونه کوچیکی هم برای رفع این موضوع دارید بدید.

راستی من هم تابع رو توی ready گذاشتم و هم خارج اون ولی هیچ کدوم جواب نداد

nadi_1368
دوشنبه 28 آذر 1390, 12:12 عصر
سلام لطفا کدتونو بزاریم تا بهتر متوجه شیم

Spring_64
دوشنبه 28 آذر 1390, 14:43 عصر
سلام
فکر کنم اگر از live استفاده کنید مشکل حل میشه:
$('#LINKID').live('click',function(){});
چنانچه باز هم مشکل داشتید از delegate استفاده کنید.
$('body').delegate('#LINKID','click',function(){})

famarini
پنج شنبه 13 بهمن 1390, 04:47 صبح
سلام

دوست من Spring_64 (http://barnamenevis.org/member.php?99451-Spring_64) عزیز مشکل من هم همین بود و حل شد. اما این اتفاق برای چی می افته می شه توضیح بدین چرا با دستور قبلی کار انجام نمی شه ؟

بازم ممنون

e107365
پنج شنبه 13 بهمن 1390, 12:07 عصر
برای این کار نمی کنه که چون جی کوئری بر روی المان های دام (DOM) کار می کنه و این المان ها هم هنگام لود صفحه توسط مرورگر ساخته می شن و در هنگامی که با استفاده از متود load یک المان جدید رو به صفحه می آورید این المان وارد ساختار درختی DOM نمی شه و جی کوئری اون رو نمیشناسه اما با live یا delegate اون رو به درخت میاره و میشه انتخابش کرد. از متود bind هم می تونی استفاده کنی.