كيفية الوصول إلى العنصر باستخدام "هذا"
-
01-10-2019 - |
سؤال
أحتاج إلى الوصول إلى علامة SPAN الموجودة في كل علامة DIV
لذلك استخدمت هذا الكود التالي
$("DIV").click(function(){
$(this + "SPAN").show();
});
هل الكود أعلاه صحيح؟لا يعمل بالنسبة لي!كما أنها لا تظهر أي شيء..
الرجاء مساعدتي
شكرًا،
برافين ج
المحلول
يمكنك استخدام .find()
للحصول على عنصر داخل عنصر آخر، مثل هذا:
$("div").click(function(){
$(this).find("span").show();
});
كقاعدة عامة، للحصول على أي شيء يتعلق this
, ، ستبدأ عادةً بـ $(this)
وبعض مزيج من وظائف اجتياز الشجرة يتحرك حول.
للحصول على الكود الفعلي، بناءً على التعليقات أدناه:
إذا كان الرمز الخاص بك يبدو كالتالي:
<fieldset>
<legend>Link</legend>
<span>CHECK</span>
</fieldset>
ثم .find()
لن تعمل منذ يوم $("legend")
المحدد لأن <span>
ليس كذلك داخل ال <legend>
إنه شقيق، لذا استخدمه .siblings()
(اختياريًا باستخدام محدد) مثل هذا:
$("legend").click(function(){
$(this).siblings("span").show();
});
نصائح أخرى
يمكنك استخدام وظيفة البحث للقيام بذلك. (أيضًا ، يفضل استخدام الأحرف الصغيرة للمحددات.)
$("div").click(function(){
$(this).find("span").show();
});
لا تنتمي إلى StackOverflow