Как определить порядок запуска другой функции mouseDown

У меня есть два вида функций, которые будут обнаруживать mousedown событие и запуск некоторых функций.

  1. window.onmousedown = function(...)

  2. Raphael object:
    var rec = paper.rect(10,10,10,10)
    rec.mousedown(...)

второй прямоугольник, созданный Raphael.js и функция будет срабатывать при нажатии на прямоугольник.

Мне нужно, чтобы второй был запущен раньше, чем первый, но кажется, что порядок запуска этих двух функций определяется браузером случайным образом?

У меня есть какой-нибудь способ это контролировать?

Спасибо!!

1 ответ

Решение

Мне нужно, чтобы второй был запущен перед первым


Посмотрите на ДЕМО, mousedown даже срабатывает на circle до window's,

window.onmousedown = function()
{
    alert('Yes');
}

var paper = new Raphael(document.getElementById('paper'),500,400);

var circle = paper.circle(100,100,50).attr({fill:'orange', stroke:'green', 'stroke-width':3});
circle.mousedown(function() {
    alert('No');
    this.attr({fill:'green', stroke:'red', 'stroke-width':3});
});

circle.mouseout(function() {
    this.attr({fill:'orange', stroke:'green', 'stroke-width':3});
});

Нажмите на круг и увидите, что alerts, Удачи

Другие вопросы по тегам