использовать jquery эффекты в качестве свойства функции - PullRequest
1 голос
/ 06 марта 2020
function addClassFadeIn(elm,effect){
    console.log(elm);
    elm.find('.dropDown').effect;
}

addClassFadeIn('.hasDropDown','fadeIn()');

Я просто хочу добавить Jquery эффект в качестве свойства функции и использовать это

1 Ответ

1 голос
/ 06 марта 2020

При доступе к свойству объекта jQuery через строку необходимо использовать скобочные обозначения. Также обратите внимание, что в вашем коде elm есть строка селектора, поэтому вам нужно обернуть ее в jQuery объект для вызова методов. Попробуйте это:

function addClassFadeIn(selector, methodName) {
  $(selector).find('.dropDown')[methodName]();
}

addClassFadeIn('.hasDropDown', 'fadeIn'); // note no () here
.dropDown { display: none; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="hasDropDown">
  <div class="dropDown">Lorem ipsum</div>
</div>

Стоит также отметить, что пример в значительной степени избыточен, но я предполагаю, что это всего лишь учебное упражнение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...