Для координат мыши (123,12) event.layerX || event.layerX == 0
даст нам TRUE в первой части оператора (event.layerX
), а вторая (event.layerX == 0
) не будет проверена.
Если event.layerX равен undefined
(т. Е. Мы используем Opera), первая часть event.layerX || event.layerX == 0
даст нам FALSE, а вторая не будет проверена.
Но есть еще одинвозможность.Координаты мыши могут быть (0, 123), и первая часть event.layerX || event.layerX == 0
даст нам ЛОЖЬ, в то время как эти координаты совершенно верны.Вот почему есть вторая часть event.layerX == 0
, которая возвращает TRUE, поэтому оператор if будет вычислен в конце концов.