Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532

Отследить срабатывание события над элементом с заданным id

26.07.2014, 00:52. Показов 3114. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Есть форма
HTML5
1
2
3
<form id="formfiles" method="post" enctype="multipart/form-data">
    <input id="file" type="file">
</form>
И Js
JavaScript
1
2
3
MyJs('file').doJS(p1,p2){
//body js
}
Когда происходит событие(например) onchange над элементом с id file(теоретически любой, его указываем в скобках) нужно выполнить js код написанный на месте body js. Подскажите как это реализовать.
Спасибо.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.07.2014, 00:52
Ответы с готовыми решениями:

Срабатывание события
Такой вопрос. В задаче сказано: в классе машина должно быть событие, которое срабатывает в тот момент, когда скорость равна 100 и более. ...

При переносе кнопки над элементами, можно ли узнать над каким элементом переносишь?
А точнее, у меня на страничке куча кнопок, одну я беру и переношу в произвольное место, при этом мне нужно знать над каким элементам я...

Timer Срабатывание события Tick
Подскажите пожалуйста, каждое следующее событие Tick будет срабатывать с учетом времени работы предыдущего тика или же ровно по времени...

22
39 / 39 / 43
Регистрация: 14.07.2014
Сообщений: 230
26.07.2014, 09:46
JavaScript
1
2
3
4
5
6
7
8
9
$('formfiles input[type=file]').bind('change',function()
 {
 var id=$(this).attr("id");
 switch(id){
   case "blabla1": blabla1();
   case "blabla2": blabla2();
  }
 }
);
А функции пишешь в боди или куда хотел.
0
 Аватар для mazahist
35 / 35 / 26
Регистрация: 27.05.2012
Сообщений: 204
26.07.2014, 11:20
JavaScript
1
2
3
4
5
document.getElementById("file").onchange=function(eve)
{
   //какой либо код
   
}
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
26.07.2014, 23:57  [ТС]

Az Rieil, mazahist, Я только не понял, как это все связать с моим переведенным кодом? Где тут MyJs и doJS ???
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
27.07.2014, 07:03
Событие onchange вешается на
HTML5
1
<input id="file" type="file">
когда это событие происходит запускается код, который дал mazahist, тут и делай то что надо.
Цитата Сообщение от SanychBY Посмотреть сообщение
нужно выполнить js код написанный на месте body js
это не получилось дешифрировать
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
28.07.2014, 00:50  [ТС]
newJS, Пардон, но и Вы туда же.
Мне важна конструкция
JavaScript
1
2
3
MyJs('file').doJS(p1,p2){
//body js - тело функции
}
Я просто прописываю это, и этот код должен говорить - "когда сработает событие change над элементом с id file выполнить код прописанный на месте //body js - тело функции"
Это как в jq
JavaScript
1
jQuery('#file').click(alert('Alert');)
Мне нужно что-то похожее, только jQuery - MyJs, click - doJS.

Добавлено через 2 часа 13 минут
Каюсь. Бред написал.
JavaScript
1
MyJs('file').doJS(p1,p2);
Так должно быть

Добавлено через 11 минут
JavaScript
1
2
3
4
5
document.getElementById("file").onchange = function(eve)
            {
                //какой либо код
                
            }
TypeError: document.getElementById(...) is null

Добавлено через 1 минуту
В общем суть такая, как мы в jq ловим клик, словить ченьдж
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
28.07.2014, 08:38
SanychBY, странная у тебя просьба. Почему DoJS именно на клик должно работать? Вот тебе вариант, где надо указывать функцию обработчика в параметре функции, а не в самой функции, вообще реализация почти как в JQ ( правда тут не так кроссбраузерно )

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
var MyJs = function (selector) {
    return {
        el : document.querySelectorAll(selector)[0],
        click : function(func) {
            this.el.addEventListener("click",func);
            return this; // всегда возвращаем this ( наш объект, что бы была возможность цепочек вызовов) 
        }
    }
};
var t = MyJs(".clickable").click(function() {
    alert("It's work!");
});
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
29.07.2014, 01:27  [ТС]
Thisman, прокомментируйте код пожалуйста.
Цитата Сообщение от Thisman Посмотреть сообщение
Почему DoJS именно на клик должно работать?
Мне так нужно. Например в jq нет ничего странного что $.ajax работает только на ajax.

Добавлено через 59 секунд
Цитата Сообщение от Thisman Посмотреть сообщение
Почему DoJS именно на клик должно работать?
Клик я привел как пример в jq, мне change изначально нужно)

Добавлено через 1 минуту
Да расшифруйте мне эту строку просто
JavaScript
1
MyJs('file').doJS(p1,p2);
для начала
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
29.07.2014, 05:08
SanychBY,

Цитата Сообщение от SanychBY Посмотреть сообщение
Да расшифруйте мне эту строку просто
JavaScript
1
MyJs('file').doJS(p1,p2);
в смысле расшифровать? Я же не могу знать, что делает DoJS. В данном коде нет ни какого намека, на то, что он выполняется при изменении чего-либо, и вообще реагирует на события.
DoJs является методом объекта который возвращает функция MyJS, это все что можно сказать из этого кода
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
29.07.2014, 14:37  [ТС]
Цитата Сообщение от Thisman Посмотреть сообщение
Я же не могу знать, что делает DoJS
Да пусть хоть выводит алерт, это пока не важно.

Добавлено через 1 минуту
Цитата Сообщение от Thisman Посмотреть сообщение
в смысле расшифровать?
Я привел своего рода функцию, а меня интересует сам ее сценарий, конструкция.
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
29.07.2014, 16:47
SanychBY, ты видимо не понимаешь о чем говоришь, или не понятно объясняешь. Конструкцию чего? Как работает функция? Это нужно смотреть в ее код, что она делает? Опять смотреть в ее код, как она реализована ? Снова в ее код заглядывать надо, сценарий чего? Что ты под этим подразумеваешь.
Я тебе сказал, что в твоем примере, функция MyJS возвращает объект, которые имеет метод DoJS, все , больше из кода, что ты показал, сказать нечего.
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
29.07.2014, 17:01  [ТС]
Передать функцию в функцию и другие параметры. Расшифровать конструкцию
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
31.07.2014, 15:58  [ТС]
И никто не может по примеру ответить мне?
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
31.07.2014, 21:38
JavaScript
1
2
3
MyJs('file').doJS(p1,p2){
//body js
}
Здесь что-то не то. Возможно имелось ввиду:
JavaScript
1
2
3
 MyJs('file').doJS(p1,p2,{
//body js
});
?
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
31.07.2014, 22:20  [ТС]
Вы правы, прочитайте сообщения ранее.
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
31.07.2014, 22:26
SanychBY почитал, но столько вопросов))) Вроде сверху ответили уже или еще что-то не понятно?
0
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
31.07.2014, 22:28  [ТС]
JavaScript
1
MyJs('file').doJS(p1,p2);
Расшифруйте мне это, потом вернемся к событиям, чтобы я мог в dojs использовать 'file'
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
31.07.2014, 22:34
Такую конструкцию можно расшифровать например так:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
function MyJs(name) { // обычная функция
        return {  // возвращает объект с методом doJS
          doJS: function(val1, val2) {
             console.log(val1 + ' ' + val2);
          }
        }
     }
 
   // переменные передаются в функцию поэтому должны быть определены
      var p1 = 'val1',
         p2 = 'val2';
 
    MyJs('file').doJS(p1,p2); // тут вызываем MyJs - возвратили объект и сразу же у этого объекта вызываем метод doJS
1
 Аватар для SanychBY
39 / 46 / 3
Регистрация: 04.06.2013
Сообщений: 1,532
31.07.2014, 22:39  [ТС]

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
function MyJs(name) { /
        return {  
          doJS: function(val1, val2) {
             //определить, что произошло событие change и вывести алерт
          }
        }
     }
 
      var p1 = 'val1',
         p2 = 'val2';
 
    MyJs('file').doJS(p1,p2);
0
 Аватар для vovandr
636 / 523 / 195
Регистрация: 19.08.2013
Сообщений: 1,400
31.07.2014, 22:43
Скрипт ставим после html кода (ниже)
HTML5
1
2
3
<form id="formfiles" method="post" enctype="multipart/form-data">
    <input id="file" type="file">
</form>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function MyJs(name) {
        return {
          doJS: function(val1, val2) {
            document.getElementById(name).onchange = function() {
                alert('сработал onchange');
            };
          }
        }
     }
 
     var p1 = 'val1',
         p2 = 'val2';
 
    MyJs('file').doJS(p1,p2);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.07.2014, 22:43
Помогаю со студенческими работами здесь

Запустить срабатывание события в textBox1_TextChanged
Здравствуйте. Подскажите, пожалуйста, как запустить срабатывание события в textBox1_TextChanged. Пробую как то так:...

Срабатывание события по изменению переменной
Есть глобальная переменная изменяется в потоке. Нужно поставить заглушку в другой функции на изменение переменной! // так я...

Срабатывание события в определенное время (будильник)
Вот в чем дело) Я сделал календарь с заметками, но не могу настроить будильник, естественно тогда когда должен прозвинеть, время...

Срабатывание на события мыши и тач скрина
Привет всем, скажите пожалуйста. К примеру, у меня есть две кнопки. Одна реагирует на события мыши, а вторая на события тач девайсов....

Срабатывание события при определенных условиях
Нужно написать программу в которой реализируется логика движения автомобиля. В 20 часов ( if (j == 20) MaxSpeed();) нужно чтобы сработало...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru