Возможно, я не понимаю вашу идею полностью, но я написал код.
Это работает очень просто. Мы связываем два события «click mouseover» на #mypointer, а также на h1 (или любой другой селектор). Когда событие запускается на #mypointer, мы проверяем каждый элемент h1, чтобы он соответствовал его позиции с позицией #mypointer, и если match - запускать событие по согласованному элементу.
"use strict";
/*global $*/
function getElementCoordinates(el) {
return {
left: el.offsetLeft,
right: el.offsetLeft + el.offsetWidth,
top: el.offsetTop,
bottom: el.offsetTop + el.offsetHeight
};
}
function checkIntersection($el) {
var pointer = getElementCoordinates($('#mypointer')[0]);
var element = getElementCoordinates($el[0]);
if ((pointer.left >= element.left && pointer.left = element.left && pointer.right = element.bottom && pointer.bottom = element.bottom && pointer.top
$(function() {
$('#mypointer').live('click mouseover', function (e) {
//here write selectors you want to check for collision
$('h1').each(function() {
if (checkIntersection($(this))) {
$(this).trigger(e.type);
return false;
}
});
});
$('h1').live('click mouseover', function (e) {
$("#output").html(e.type + ' fired on ' + e.target.nodeName);
});
});
К сожалению, анализатор "съесть" функция checkIntersection, полный код доступен на http://www.everfall.com/paste/id.php?263utdc1nmqy
WBR, Роман.
Вы хотите имитировать события ... или просто запускать обработчики событий, которые вы подключили к этим событиям? –
Я хочу, чтобы, если у меня есть элемент h1, у меня есть код $ ("h1"). Mouseover (function() { $ ("# output"). Text ('Я над элементом h1'); }); , что этот код также будет выполняться, когда div # mypointer анимируется над элементом h1. Если у div есть столкновение с каким-то элементом на странице, и я вызываю метод на div # mypointer. Я хочу, чтобы clickeventhelper другого элемента срабатывает и будет выполняться. –
В javascript нет события столкновения (что я знаю), которые срабатывают, когда встречаются два элемента. Вам, вероятно, придется это сделать вручную. – Mottie