PDA

View Full Version : this در جی کوئری و جاوا اسکریپت



fr_sdgh
جمعه 30 مهر 1395, 14:30 عصر
الان من این this رو رپ کنم توی جیکوئری یا نکنم چه فرقی میکنه!؟ اصولا چون this خالی دام نود رو برمیگردونه نباید متد های جی کوئری روش کار کنه ولی اینجا کار مکنه چرا !!!

$.fn.test = function() {
$(this).css("color", "red");
}
$("div").test();

plague
جمعه 30 مهر 1395, 18:25 عصر
چون تو wrapper جی کوئری قرار داده شده دستورات جیکوئری هم روش کار میکنه

fr_sdgh
جمعه 30 مهر 1395, 18:41 عصر
چون تو wrapper جی کوئری قرار داده شده دستورات جیکوئری هم روش کار میکنه

خوب صحبت سر اینه که اگه رپ نکنی هم اینجا جواب میده !

plague
شنبه 01 آبان 1395, 19:27 عصر
حالا متوجه شدم منظورت از رپ چیه فکر کردم اشتباه تایپی داشتی !
من متخصص جاوااسکریپت نیستم ولی بخام حدس بزنم
با توجه به اینکه تابع رو روی $("div") فراخانی کردی
توی تابع this به $("div") اشاره میکنه
اگه این تیکه کد زیر رو اجرا کنی میبینی که هر دو مورد آبجکت جی کوئری هستن با تمام متد ها جیکوئری


<div id="test"></div>


<script>
$.fn.test = function() {
console.log(this);
}
console.log($("#test"));
$('#test').test();
</script>

this اصولا تو متد یک کلاس به شی که متد رو فراخانی کرده اشاره میکنه
این فرق میکنه با اون this جاوااسکریپت که توی کار کردن با دام استفاده میکنی بخاطر اینکه مکان استفادش متفاوته