Filter beberapa atribut

Saya memiliki skrip filter kecil, yang menampilkan gambar berdasarkan tag alt. Tapi saya juga punya div yang bisa dicari. Untuk validasi yang benar saya tidak bisa memberi mereka tag alt, saya harus menggunakan label aria.

Jadi: Bagaimana saya bisa mencari alt tag dan aria-label?

//Search
$("#search").on("keyup", function () {

  if ($(this).val().length >= 3) {
    // hide everything,
    $(".brand").hide();
    $(".brandsslider").hide();
    // get the text in the input
    var mySelector = $(this).val();
    // show any alt that contains the input
    var myImgs = $("[alt*='" + mySelector + "' i]");
    myImgs.show();
  } else {
    $(".brand").hide();
  }
}); 

person JPC    schedule 06.12.2020    source sumber


Jawaban (1)


Cukup gabungkan pemilih Anda untuk menargetkan kedua atribut.

var myImgs = $("[alt*='"+mySelector+"', [aria-label*='"+mySelector+"']");

(Catatan, saya menghapus i yang tersesat dari pemilih asli Anda karena saya tidak dapat melihat apa gunanya, dan akan menyebabkan pemilih atribut Anda gagal.)

person Mitya    schedule 06.12.2020