Задать вопрос
@BloodySucker

Не работает jquery функция в onclick, как исправить?

function warp(object, width, height, html) {
    $(object).html('<div id="'+object+'b'+'" style="background: url(' + "'images/watermark.png'" + ') no-repeat; border-radius: 3px; width: 100%; height: 100%; box-sizing: border-box; padding-left: 63px; padding-top: 29px; padding-bottom: 58px; padding-right: 71px; background-position: '+((width/2)+29)+' -110px;"><div class="exit" id="'+object+'e'+'" style="margin-left: '+(width-80)+'px;" onclick="$('+object+').toggle();"><img src="images/exit.png"></div>'+html+'</div>');
    $(object).css({'position': 'fixed', 'width': width, 'height': height, 'display': 'none', 'box-shadow': '0px 0px 35px 0px rgba(0, 0, 0, 0.34);', 'background-color': '#FFF', 'border-radius': '3px', 'z-index': '9'});
    $(document).ready(function() {
        $(object+'r').click(function() {
            $(object).toggle();
        });
        
    $(object).css({'top': ($(window).height()/2)-(height/2), 'left': ($(window).width()/2)-(width/2)});
    });
    
    $(window).resize(function() {
        $(object).css({'top': ($(window).height()/2)-(height/2), 'left': ($(window).width()/2)-(width/2)});
    });
}


В процессе этой функции генерируется всплывающее окно, которое имеет в себе кнопку закрытия этого окна. Кнопка добавляется с помощью .html(), так как
$(object+'e').click(function() {
$(object).toggle();
});
не работает на тегах добавленных через .html() в ходе функции.
Но и тут меня встретила проблема, добавил к кнопке object+'e' onlick="$(object).toggle();",но в ответ при клике я получаю Uncaught SyntaxError: Unexpected token ILLEGAL
  • Вопрос задан
  • 889 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
standy
@standy
У вас в генерации html ошибка
... onclick="$('+object+').toggle();"> ....
//получается $(#lostpath)


А вообще лучше переписать, как минимум раздать переменным внятные имена
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы