![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 08:56
|
Аспирант
|
|
Регистрация: 12.07.2011
Сообщений: 71
|
|
Копирование событий другому элменту.
Привет.
Есть элемент, допустим INPUT:
<input id="inp" type="text" />
На него вешается событие (onclick) с помощью jQuery:
form.on('click',function(e){
// ....
})
Теперь динамически создаю элемент:
input = document.createElement("input");
Как можно без jQuery повесить на него такое же событие, что и на инпуте с id="inp"?
В jQuery есть удобный "clone", а что можно сделать, что бы это работало с простым javascript и особенно в IE.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 09:05
|
Аспирант
|
|
Регистрация: 12.07.2011
Сообщений: 71
|
|
Еще хотел добавить, что сейчас на элементе, с которого нужно скопировать событие висит следующее:
password.complexify(function(valid, complexity){
})
password - это input c type="password"
Как это можно скопировать в новый созданный input?
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 09:32
|
![Аватар для cyber](https://javascript.ru/forum/image.php?u=17759&dateline=1426263946) |
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
а вы не пробывали функцию которая обрабатывает событие выносить отдельно?
function EventListener () {
}
form.on("click", EventListener)
elem.on("click", EventListener)
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 09:50
|
Аспирант
|
|
Регистрация: 12.07.2011
Сообщений: 71
|
|
cyber, спасибо за совет.
Я вешаю на свой элемент модуль jQuery, который расширяет стандартный набор функций jQuery:
$.fn.extend({
complexify: function(options, callback) {
}
Пробовал, что то типа:
input.complexify = $.complexify(function(valid, complexity){
})
Но так тоже не вызывается.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 10:03
|
![Аватар для bes](https://javascript.ru/forum/image.php?u=19820&dateline=1334914235) |
Профессор
|
|
Регистрация: 22.03.2012
Сообщений: 3,744
|
|
live()
PS: зачем без jq, если всё равно использовать jq
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 10:56
|
Аспирант
|
|
Регистрация: 12.07.2011
Сообщений: 71
|
|
Попробовал
intput.on('complexify',({minimumChars:8,strengthScaleFactor:0.7}, function(valid, complexity){
})
Пишет, что предполагается наличие объекта.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 10:58
|
Аспирант
|
|
Регистрация: 12.07.2011
Сообщений: 71
|
|
Видимо придется забить на IE.
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 15:31
|
![Аватар для cyber](https://javascript.ru/forum/image.php?u=17759&dateline=1426263946) |
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
конечно я не очень разбераюсь в jquery
но что это за строчка маразма
({minimumChars:8,strengthScaleFactor:0.7}, function(valid, complexity){
}
intput.on('complexify', function(){
$.complexify({minimumChars:8,strengthScaleFactor:0 .7},function() {})
})
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 16:47
|
Аспирант
|
|
Регистрация: 12.07.2011
Сообщений: 71
|
|
cyber, да эта строчка - истинный маразм.
Ваш вариант обязательно попробую.
И возник еще вопрос по ходу дела.
Допустим, я динамически создал элемент:
input = document.createElement("input");
можно ли к объекту "input" прицепить событие:
intput.on('complexify', function(){
$.complexify({minimumChars:8,strengthScaleFactor:0 .7},function() {})
})
Или "input" должен обязательно быть объектом jQuery?
|
|
![Старый](/forum/images/ca_serenity/statusicon/post_old.gif)
16.10.2012, 17:01
|
![Аватар для cyber](https://javascript.ru/forum/image.php?u=17759&dateline=1426263946) |
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
Сообщение от Kotakota
|
Допустим, я динамически создал элемент:
input = document.createElement("input");
можно ли к объекту "input" прицепить событие:
intput.on('complexify', function(){
$.complexify({minimumChars:8,strengthScaleFactor:0 .7},function() {})
})
|
function onComplexify(){
$.complexify({minimumChars:8,strengthScaleFactor:0 .7},function() {})
}
intput.on('complexify', onComplexify);
elem.on('click',onComplexify);//к примеру
Сообщение от Kotakota
|
Или "input" должен обязательно быть объектом jQuery?
|
если вы используете jQuery то элемент должен быть обязательно обьектом Jquery
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
|
|