простой вопрос по preventDefault
помогите понять, почем такой скрипт не срабатывает
<a href="http://google.com" id="inner" onclick="myFunc()">внутренний</a>
<script type="text/javascript">
function myFunc(e){
e.preventDefault();
}
</script>
|
.....
Цитата:
|
получается остановить действия браузера по умолчанию, я могу двумя способами
var a = document.getElementById('inner');
a.onclick = function (e){
e.preventDefault();
}
и
var a = document.getElementById('inner');
function stop(e){
e.preventDefault();
}
a.addEventListener('click', stop, false)
|
Не в этом дело
Цитата:
…onclick = function (event) {
myFunc();
}
а не …onclick = myFunc; вам нужно просто педеать событие в функцию Код:
onclick="myFunc(event)" |
Цитата:
в таком случае
…onclick = function (event) {
myFunc();
}
при вызове myFunc() она поищет у себя объект event, не найдет, и пойдет выше ... не пойму, почему так не происходит ? |
вот как надо
…onclick = function (event) {
myFunc(event);
}
|
Цитата:
я не пойму почему myFunc не берет объект события из верхней функции, которая собственно и вызывает саму myFunc |
Цитата:
|
А JavaScript телепатические способности не заложены, откуда myFunc может узнать, какой агрумент забрать?)
|
я понял, спасибо за ответы
думал что
function wrap(a){
(function myFunc(){
alert(a);
})()
}
wrap('qwerty');
одно и тоже что и
function wrap(a){
myFunc();
}
function myFunc(){
alert(a);
}
wrap('qwerty');
|
Цитата:
|
ты же там не только имя функции можешь написать
|
Цитата:
|
| Часовой пояс GMT +3, время: 17:24. |