مетод jQuery noConflict()
- صفحه قبل jQuery Get/Post
- صفحه بعدی مثالهای jQuery
چگونه میتوان jQuery و سایر فریمورکها را در صفحه به طور همزمان استفاده کرد؟
jQuery و سایر فریمورکهای JavaScript
همانطور که شما آگاهی دارید، jQuery از نماد $ به عنوان اختصار خود استفاده میکند.
اگر فریمورکهای دیگر JavaScript نیز از نماد $ به عنوان اختصار استفاده کنند، چه؟
برخی از فریمورکهای دیگر JavaScript شامل: MooTools، Backbone، Sammy، Cappuccino، Knockout، JavaScript MVC، Google Web Toolkit، Google Closure، Ember، Batman و Ext JS میباشند.
در برخی از فریمورکهای دیگر نیز از نماد $ به عنوان اختصار استفاده میشود (مثل jQuery)، اگر دو فریمورک متفاوت در حال استفاده از همان نماد اختصار باشند، ممکن است اسکریپت متوقف شود.
تیم jQuery به این مشکل توجه کرده و روش noConflict() را پیادهسازی کرده است.
مетод jQuery noConflict()
مетод noConflict() کنترل نماد $ را آزاد میکند، بنابراین سایر اسکریپتها میتوانند از آن استفاده کنند.
مثال
البته، شما همچنان میتوانید از نام کامل به جای اختصار برای استفاده از jQuery کنید:
$.noConflict(); jQuery(document).ready(function(){ jQuery("button").click(function(){ jQuery("p").text("jQuery همچنان در حال اجرا است!"); }); });
مثال
شما همچنین میتوانید اختصارات خود را ایجاد کنید. noConflict() میتواند مرجع jQuery را بازگرداند، که میتوانید آن را در یک متغیر ذخیره کنید تا در آینده از آن استفاده کنید. به عنوان مثال:
var jq = $.noConflict(); jq(document).ready(function(){ jq("button").click(function(){ jq("p").text("jQuery همچنان در حال اجرا است!"); }); });
مثال
اگر بلوک کد jQuery شما از اختصار $ استفاده میکند و نمیخواهید این راهحل سریع را تغییر دهید، میتوانید نماد $ را به عنوان یک متغیر به روش ready ارسال کنید. در این صورت میتوانید در داخل تابع از نماد $ استفاده کنید - و در خارج از تابع، همچنان باید از "jQuery" استفاده کنید:
$.noConflict(); jQuery(document).ready(function($){ $("button").click(function(){ $("p").text("jQuery همچنان در حال اجرا است!"); }); });
دستورالعمل هستهای jQuery
برای مشاهده کلیترین روشهای هستهای jQuery، لطفاً به وبسایت ما دستورالعمل هستهای jQuery。
- صفحه قبل jQuery Get/Post
- صفحه بعدی مثالهای jQuery