Как объединить эти функции jquery?

#jquery #function

#jquery #функция

Вопрос:

есть ли способ объединить их?

 $("#demo1Btn").mopTip({'w':200,'style':"overClick",'get':"#demo1"});
$("#demo2Btn").mopTip({'w':200,'style':"overClick",'get':"#demo2"});
$("#demo3Btn").mopTip({'w':200,'style':"overClick",'get':"#demo3"});
$("#demo4Btn").mopTip({'w':200,'style':"overClick",'get':"#demo4"});
$("#demo5Btn").mopTip({'w':200,'style':"overClick",'get':"#demo5"});
  

Спасибо

Ответ №1:

 for (var i = 1; i < 6; i  ) {
  $("#demo"   i   "Btn").mopTip({'w':200,'style':"overClick",'get':"#demo"   i});
}
  

было бы немного чище

Ответ №2:

Да, вы можете поместить все классы / идентификаторы в одну и ту же функцию, но просто разделите запятой.

 $("#demo1Btn, #demo2Btn, #demo3Btn, #demo4Btn, #demo5Btn").mopTip({'w':200,'style':"overClick",'get':$(this).attr('id').replace('Btn','')});
  

Это должно сработать!

Ответ №3:

Возможно, с:

 $('div[id^="demo"][id$="Btn"]').mopTip({'w':200,'style':"overClick",'get':this.id});
  

выберет элементы, которые id начинаются с «demo» и заканчиваются на «btn»; this.id следует найти соответствующий элемент id и присвоить его get параметру.

Ответ №4:

Используйте starts-with селектор и each цикл

 $("[id^='demo']").each(function(){
    $(this).mopTip({'w':200,'style':"overClick",'get':"#demo1"});
});