Agar HTML elementi boshqasi bo'lsa, qanday tekshiriladi?

I want to check if my title

has the class highlight so I founded How to check if element contains specific class attribute but I'm not sure about how to fit it to my use case because it's not the

which contains the class but the span inside it: enter image description here

Men ushbu kodni bajarishga harakat qildim:

$('.liContainer div h3').each(function(i, obj) {
      var contains = false;
      String classes = obj.getAttribute("class");
      for (String c : classes.split(" ")) {
          if (c.equals("highlight")) {
              contains = true;
          }
      }
      if(contains){
        obj.classList.remove("highlight");
      }
    });

Lekin haqiqiy kod bilan xatolik yuz berdi:

imports/ui/layout.js:42:13: Unexpected token (42:13)

and it's the line String classes = obj.getAttribute("class");

Menga yordam berish uchun kimdir yordam berishi mumkinmi? [EDIT] javobingiz yordamida men bu yerda hozirman:

'click .liContainer div h3': function(e){
       if ( $(e.target).find("span").is(".highlight") ) {
            console.log("it was highlighted");
           $(e.target).find("span").removeClass('highlight');
       }
  },

va shuning uchun hammaga rahmat

1
.hasClass() dan foydalaning
qo'shib qo'ydi muallif guradio, manba
$ ("# nameMachine h3 span"). hasClass ("highlight") agar sinf bo'lsa
qo'shib qo'ydi muallif guradio, manba
$ ("# nameMachine h3 span"). hasClass ("highlight") agar sinf bo'lsa
qo'shib qo'ydi muallif guradio, manba
@guradio sizning namunangiz bormi?
qo'shib qo'ydi muallif Jerome, manba
@guradio sizning namunangiz bormi?
qo'shib qo'ydi muallif Jerome, manba

14 javoblar

    I hope it will help you

        $('.liContainer div h3').each(function(i, obj) {
           if ( $(this).find("span").is(".highlight") ) {
              //do something
           }
        });

    **can you just help me to do the action only on the clicked h3?**

    If `click` action:

        $('.liContainer div h3').click(function() {
           if ( $(this).find("span").is(".highlight") ) {
              //do something
           }
        });

    I use your code, and change the content of the `each` loop.
    You loop each `

` and check if child `` has class `.highlight`, then you do something... The above Code can also be written as follows: $('.liContainer div h3').click(function() { if ( $(this).find("span.highlight") ) { //do something } }); Hope this works fine.

2
qo'shib qo'ydi
Ehtimol, sizning nihoyat foydalanaman, siz faqatgina bosilgan h3 da harakat qilishimga yordam bera olasizmi?
qo'shib qo'ydi muallif Jerome, manba
    I hope it will help you

        $('.liContainer div h3').each(function(i, obj) {
           if ( $(this).find("span").is(".highlight") ) {
              //do something
           }
        });

    **can you just help me to do the action only on the clicked h3?**

    If `click` action:

        $('.liContainer div h3').click(function() {
           if ( $(this).find("span").is(".highlight") ) {
              //do something
           }
        });

    I use your code, and change the content of the `each` loop.
    You loop each `

` and check if child `` has class `.highlight`, then you do something... The above Code can also be written as follows: $('.liContainer div h3').click(function() { if ( $(this).find("span.highlight") ) { //do something } }); Hope this works fine.

2
qo'shib qo'ydi
Ehtimol, sizning nihoyat foydalanaman, siz faqatgina bosilgan h3 da harakat qilishimga yordam bera olasizmi?
qo'shib qo'ydi muallif Jerome, manba

find() will be searching in all of child element . So if there have wanted class its length will be 1 else length is 0.

$('.liContainer div h3').each(function(i, obj) {
    var hasClass = $(obj).find(".highlight");            
      if (hasClass.length) {
        hasClass[0].classList.remove("highlight");
      }
});
1
qo'shib qo'ydi

Bilmasligingizni bilishning qo'pol usuli bolani tanlash vositasi

$ ('# nameMachine *'). hasClass ('yourClass');//haqiqiy yoki noto'g'ri

1
qo'shib qo'ydi
Ha, lekin agar OP faqat sinf DOM pastda mavjudligini bilishni istasa, ishlaydi
qo'shib qo'ydi muallif mehulmpt, manba
Barcha bolalarni tanlab olish ortiqcha bo'lishi mumkin.
qo'shib qo'ydi muallif Fabian Klötzl, manba

Bilmasligingizni bilishning qo'pol usuli bolani tanlash vositasi

$ ('# nameMachine *'). hasClass ('yourClass');//haqiqiy yoki noto'g'ri

1
qo'shib qo'ydi
Ha, lekin agar OP faqat sinf DOM pastda mavjudligini bilishni istasa, ishlaydi
qo'shib qo'ydi muallif mehulmpt, manba
Barcha bolalarni tanlab olish ortiqcha bo'lishi mumkin.
qo'shib qo'ydi muallif Fabian Klötzl, manba

Agar siz jquery-dan foydalanayotgan bo'lsangiz, bu oddiy echim haqida qanday fikrdasiz:

$('.liContainer div h3 .highlight').removeClass('highlight');
1
qo'shib qo'ydi
@AbhishekPandey Men uni o'zim sinab ko'raman, chunki bu javob ishni qiladi. Lekin .highlight faqatgina .liContainer da bo'lishi mumkin (chunki bu kabi kodlangan)
qo'shib qo'ydi muallif Jerome, manba
@AbhishekPandey bu ishni bajarish uchun hamma uchun olib tashlanishi kerak, lekin men yaxshilab takomillashtirmoqchi bo'laman.
qo'shib qo'ydi muallif Jerome, manba
.hasClass() dan foydalanish haqida nima deyish mumkin?
qo'shib qo'ydi muallif Abhishek Pandey, manba

sarlavhasi ta'kidlangan bo'lsa, .highlight .liContainer bo'lmasa nima bo'ladi?

qo'shib qo'ydi muallif Abhishek Pandey, manba

Siz quyidagi kabi harakat qilishingiz mumkin:

if( $("h3", "#nameMachine").has(".highlight") ) {
// do something 
}

Yoki aniqroq versiya:

if( $("> h3", "#nameMachine").has("span.highlight") ) {
// do something
}
1
qo'shib qo'ydi
Try using `has` selector as given below code :

    $('.liContainer div h3:has(span.highlight)').each(function(){
      //code here
    });
1
qo'shib qo'ydi
$('h3').filter(function(){
   return $(this).find('span.highlight').length != 0;
})//do something with it
1
qo'shib qo'ydi

$ ('span.highlight', '. liContainer div h3'). removeClass ("highlight")

Ikkinchi CSS dastlabki dastlabki dastlabki kodlashni tanlashning ko'lamini aniqlash kerak.

1
qo'shib qo'ydi
if ($('#parent').find('#child').length) {

 }
1
qo'shib qo'ydi
tushuntirishsiz kod berib, umuman javob bermayapti .. FYI emas, balki past ovozim @amd
qo'shib qo'ydi muallif guradio, manba
To'g'ri, agar kod o'z-o'ziga o'xshagan bo'lsa
qo'shib qo'ydi muallif amd, manba
Nima uchun bu to'g'ri javobni berayotib, bu savolga javob bermaslik kerak?
qo'shib qo'ydi muallif amd, manba
if ($('#parent').find('#child').length) {

 }
1
qo'shib qo'ydi
tushuntirishsiz kod berib, umuman javob bermayapti .. FYI emas, balki past ovozim @amd
qo'shib qo'ydi muallif guradio, manba
To'g'ri, agar kod o'z-o'ziga o'xshagan bo'lsa
qo'shib qo'ydi muallif amd, manba
Nima uchun bu to'g'ri javobni berayotib, bu savolga javob bermaslik kerak?
qo'shib qo'ydi muallif amd, manba

Buni qiladi. hasClass hujjatlari bu yerda

$("#nameMachine h3").hasClass("highlight")
0
qo'shib qo'ydi
Bu h3 ni tanlaydi, u sinfni o'z ichiga olgan oraliqni qidiradi
qo'shib qo'ydi muallif empiric, manba

Buni qiladi. hasClass hujjatlari bu yerda

$("#nameMachine h3").hasClass("highlight")
0
qo'shib qo'ydi
Bu h3 ni tanlaydi, u sinfni o'z ichiga olgan oraliqni qidiradi
qo'shib qo'ydi muallif empiric, manba
Javascript UZB
Javascript UZB
99 ishtirokchilar

@js_uzb @vuejs_uz @react_uz @nodejs_uz @angular_uz @ngTashkent @yiiframework_uz @laravel_uz @linux_uzbek @python_uz @swift_uzb —————— @uzdevgroup @UzGeeksGroup ——— @UzDev_Jobs @jobs_uzb