добрый день навешивается у меня обработчик PHP: this.uploadPlace.addEventListener("drop", this.drop(this.uploadPlace,status ), false); и вот эту функция его принимает PHP: this.drop = function(event,thisplace,thisStatus) { console.info(event); return false; event.preventDefault(); var dt = event.dataTransfer; var files = dt.files; for (var i = 0; i<files.length; i++) { var file = files[i]; upload(file,thisplace, thisStatus); } } как видите передается 2 параметра . а принимается 3. вопрос как передать сам event первым параметром Code: this.uploadPlace.addEventListener("drop", this.drop([B]ВОТ ТУТ как то надо передать event[/B] ,this.uploadPlace,status ), false);
ты неправильно используешь. Ты вызываешь метод, а надо его передавать или (в твоем случае) обернуть в другую функцию ...'drop', function(param1, param2...) { this.load(какой-то из параметров, this.place, status); }.bind(this)... первый или второй параметр будет ивентом - я не помню.
Code: this.uploadPlace.addEventListener('drop', function(event) { this.load(event, this.uploadPlace, status); }.bind(this), false );
спасибо. но мне подфортило. я для магенты пишу сейчас код. так вот в ней event расширенный . и можно было сделать так PHP: this.drop = function(event) { event.preventDefault(); var element = Event.element(event); var dt = event.dataTransfer; var files = dt.files; var file = files[0]; upload(file,element); } и получить элемент . а то мне и надо было