플러그인을 만들려고하는데 여러 인스턴스에 문제가 있습니다. 코드가 사용중인 인스턴스에서만 작동하도록하고 싶지만, 현재 하나를 클릭하면 두 인스턴스 모두에서 작동합니다. 상호 작용하는 인스턴스에서만 작동하는 플러그인을 작성하려면 어떻게해야합니까? 아래는 제가 말하고자하는 것에 대한 샘플입니다.jQuery 플러그인 : 해당 요소에서만 실행되는 이벤트 가져 오기
(function($) {
$.fn.cals = function(options) {
var containing_element = this;
var opts = $.extend({}, options);
// create a container after each element
$(containing_element).after('<div class="container">Click</div>');
return this.each(function() {
$('.container').on('click', function() {
console.log('test')
})
}); // END this.each
};
})(jQuery);
HTML 코드는 다음과 같습니다
는<script>
$(document).ready(function() {
$('.test').cals();
});
</script>
<div class="test" type="text">
<div class="test" type="text">
</html>
코드는 모두 .test
div의 아래 <div class="container>Click</div>
를 삽입합니다. 하나를 클릭하면 console.log('test')
은 2 개의 "테스트"를 울립니다. 난 단지 코드가 내가 상호 작용하고있는 인스턴스에 작용하기를 원한다.