почему я вижу кнопку закрытия дважды при использовании cluetip - PullRequest
3 голосов
/ 21 марта 2012

Я использую jquery cluetip , и я заметил, что в некоторых случаях, когда я нажимаю первый раз на элементах, он показывает текст ЗАКРЫТЬ дважды, когда я нажимаю второй раз, он показывает его только один раз.Итак, в первый раз я вижу это:

enter image description here

, а во второй раз я вижу это:

enter image description here

Кто-нибудь видел это раньше??У меня есть несколько подсказок на странице, но я не вижу, как это могло бы повлиять на это.Вот мой код JavaScript cluetip:

 $('#myItem').cluetip({
    width: '500px',
    showTitle: false,
    topOffset: 25,
    leftOffset: 5,
    positionBy: 'bottomTop',
    cluetipClass: 'jtip',
    activation: 'click',
    hoverIntent: {
        sensitivity: 7,
        interval: 100,
        timeout: 500
    },
    sticky: true,
    mouseOutClose: true,
    ajaxSettings: {
        dataType: 'json'
    },
    ajaxProcess: function (data) {

        return data.Content;
    }
});

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

Обновление:

Не уверен, что это полезно, но я фиксирую «двойную» ситуацию в firebug, и вот HTML, который получается.Как вы можете видеть, есть несколько элементов с id = "cluetip-close"

   <div id="cluetip-inner"><div id="cluetip-close"><a href="#">Close</a></div><div id="cluetip-close"><a href="#">Close</a></div>

Я отладил с помощью кода cluetip, и когда я получаю несколько закрытий, я замечаю, что когда он попадает в эту строку:

  if (opts.sticky) {
    var $closeLink = $('<div id="cluetip-close"><a href="#">' + opts.closeText + '</a></div>');

$ cluetipInner уже имеет '

Я до сих пор не могу понять, в какой ситуации это происходит.,Единственный способ воспроизвести его - очистить кеш браузера и перезапустить его.,может быть какая-то проблема с синхронизацией обратного вызова ajax?

Ответы [ 2 ]

3 голосов
/ 30 марта 2012

Я думаю, что эта проблема была исправлена ​​и исправлена. Здесь исправления close link вставлялись несколько раз в некоторых случаях. Исправления # 34

0 голосов
/ 21 марта 2012

Вы можете попробовать этот код:

$(function(){
$('.cluetip-close:eq(2)').remove();
});

Это удалит второй экземпляр близкого div

...