Проблема Event.targe с Firefox 6 - PullRequest
       4

Проблема Event.targe с Firefox 6

3 голосов
/ 27 сентября 2011

В Firefox 6 я попытался получить целевой элемент, для которого произошло событие, но он не показывает никакого элемента и показывает неопределенное в оповещении. Попытался отладить его с помощью инструмента firebug и обнаружил, что атрибут «target» отсутствует для объекта события. Может кто-нибудь мне помочь? У меня есть код ниже

function getSource(event)
{
    if(!event) 
    { 
        field = window.event.srcElement;
       alert(field);
    }
    else
    {
        field = event.target; 
        alert(field) //Getting undefined in FF6
    }
}

Отредактированная часть

document.onkeypress = getSource;
document.onmouseup = getSource;

Любая помощь будет оценена.

Ответы [ 4 ]

3 голосов
/ 29 сентября 2011

Попробуйте код ниже

function getSource(e)
{
     if(!e)
        e = window.event;
     field = evt.srcElement || evt.target;
     alert(field);
     return true;
 } 

Надеюсь, это поможет вам.

1 голос
/ 27 сентября 2011

Проверьте это в Fx 6:

<script type="text/javascript">

window.onload = function() {
  document.getElementById('d0').onclick = showTarget;
}

function showTarget(e) {
  e = e || window.event;
  var target = e.target || e.srcElement;
  alert(target.tagName);
}

</script>

<div id="d0">
  <p>click on me</p>
</div>

Должно появиться предупреждение "P".

0 голосов
/ 27 сентября 2011
function getSource(ev) {
  var el=(ev=ev||window.event).target||ev.srcElement;
  alert(el+" "+el.tagName);
}
0 голосов
/ 27 сентября 2011

Как также объяснено в аналогичном вопросе, измените функцию следующим образом:

function getSource(evt)
{
    if(!evt) 
        evt = window.event;
    if (evt) {
        field = evt.srcElement || evt.target;
        alert(field);
        return true;
    }
    alert("event not found");
    return false;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...