Могу ли я применить событие click к элементу body? - PullRequest
0 голосов
/ 20 августа 2011

Я готов динамически создавать элементы div при двойном щелчке в любом месте страницы. Могу ли я применить событие click к элементу body?

Вот что я попробовал:

jQuery("document").ready(function(){ 
    alert("click"); 
    jQuery("body").dblclick(function(event){ 
        alert("click"); 
    }); 
});

1 Ответ

1 голос
/ 20 августа 2011

Да:

// Example, needs some IE compatibility work
document.body.ondblclick = function (evt) {
    createNewDiv(evt.pageX, evt.pageY);
}

Есть что-то, что вы пробовали, что не сработало?

Отвечая на ваш комментарий,

"Вы можете сказать мне, что не так с этим"Вы используете селектор тегов для поиска объекта документа.jQuery("document") будет искать в документе элемент с именем <document>, который не существует.Вам нужно просто передать объект документа, так:

jQuery(document).ready(function(){ 
    alert("click"); 
    jQuery("body").dblclick(function(event){ 
        alert("click"); 
    }); 
});

Кроме того, по умолчанию элемент <body> имеет такой же большой размер, как его содержимое, поэтому, если вы применяете событие dblclick к <body> без содержимого, только верхняя левая часть документа вызовет событие.Вместо этого вы хотите применить его к объекту document:

jQuery(document).dblclick(function(event){ 
    alert("click"); 
}); 

Пример: http://jsfiddle.net/a4DKC/2/

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