Показать сообщение отдельно
  #6 (permalink)  
Старый 28.04.2018, 15:17
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Крутил коды по варианту ТС и Nexus, и вот такой ужатый (в т.ч. без self с bind(this))
Память растет на первых двух кликах. Сбор мусора в хроме ничего не дает.
Почему двух??

(в примере здесь замеры немножко нерегулярно прыгают)
<div class='div_class'></div>
<button class = 'but_class'>Click</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

<script>

function Example(){
    this.name;
    this.container_name_selector = "";
    self = this;
    this.eventClickButton = function(e, attribute){
       $("."+self.container_name_selector).text(self.name);
    };
    this.init = function(name, container_name_selector, selector_button){
        this.name = name;
        this.container_name_selector = container_name_selector;
        $("."+selector_button).on("click",  this.eventClickButton);
    };
};

var Test = new Example();
Test.init('Test','div_class','but_class');
</script>

Последний раз редактировалось Dilettante_Pro, 28.04.2018 в 15:25.
Ответить с цитированием