Зависание в zeroclipboard

Я пытаюсь реализовать флэш-компонент, используемый на retailmenot.com, и столкнулся с некоторыми проблемами.

После нескольких дней поиска и тому подобного мне удалось выполнить элемент флеш-карты zeroclipboard, чтобы просмотреть несколько кодов купонов, и когда я нажал на один из них, чтобы открыть новый URL с этой ссылкой.

Что я не могу сделать сейчас, и что я попытался с помощью нескольких методов jQuery, так это отобразить это окно "Копировать и открыть сайт" справа от элемента нахождения, на котором я нахожусь. Это похоже на всплывающую подсказку.

Я попытался применить к элементу dom, который находится под невидимой вспышкой, метод $('. Class_element'). Hover( function (){ } отображать новый div слева), но так как вспышка идет сверху, это не так срабатывает.

Еще одна попытка, которую я предпринял, состояла в том, чтобы изменить файл Zeroclipboard.js и добавить идентификатор к абсолютному элементу div, в котором находится флеш-память, и добавить на него событие hover, но все же это было безуспешно.

Я также пытался использовать addEventListner('mouseover', function(){}) из элемента Zeroclipboard, но пока безуспешно.

Не могли бы вы предложить мне, как я мог бы создать какую-то подсказку для компонентов флэш-памяти, которые располагаются поверх элементов dom?

Спасибо!

2 ответа

Flash по умолчанию отображается в отдельном окне, а не внутри DOM. Чтобы Flash вошел в DOM, добавьте параметр wmode в opaque, Если вы загрузите flash с помощью swfobject, синтаксис будет:

so.addParam('wmode','opaque');

Кроме того, элемент Flash должен знать высоту и ширину контейнера, в котором он находится, поэтому вы не можете использовать .hide() а также .show() когда зависать и выходить. Один из приемов, которые я изучаю на вкладках пользовательского интерфейса jQuery, заключается в том, что "скрытый" элемент помещается в отрицательную позицию. Когда необходимо, установите его в правильное положение, когда не нужно, верните его в отрицательное положение.

Добавление слушателей событий должно работать. Я использую их в сочетании с OpenTip. Вот как я это сделал:

var clip = new ZeroClipboard($("#copy-button"));
clip.addEventListener('onMouseOver', function(){
    console.log("mouseOver"); // code to show tool tip goes here
});

clip.addEventListener('onMouseOut', function(){
    console.log("mouseOut"); // code to hide tool tip goes here
});
Другие вопросы по тегам