Использование всплывающих подсказок jQuery в модуле автообновления jQuery - PullRequest
1 голос
/ 15 ноября 2011

У меня проблемы с получением подсказок jQuery (используя Tipsy) для работы. Подсказки отлично работают на обычных страницах, но на самом деле мне нужны подсказки на странице, которую я включаю через PHP. Причина, по которой я включаю эту страницу, заключается в том, что я также использую jQuery для автоматического обновления этой включенной страницы каждые x миллисекунд.

Похоже, что этот механизм автообновления не позволяет всплывающим подсказкам работать должным образом. Когда я удаляю этот механизм, появляются всплывающие подсказки, но эта часть страницы, очевидно, больше не перезагружается с интервалом. Я ищу способ заставить Tipsy работать, следя за тем, чтобы моя включенная страница обновлялась сама.

Я включаю свою страницу следующим образом:

<div id="vardisplay">
    <?php include("vardisplay.php"); ?>
</div>

Затем я использую следующий скрипт для обновления DIV "vardisplay", в результате чего моя включенная страница будет перезагружена:

<script>
$(document).ready(function() {
    $('#vardisplay').load('editarticle.php?bid=<?php echo $bnummer ?> #vardisplay');
    var refreshId = setInterval(function() {
        $('#vardisplay').load('editarticle.php?bid=<?php echo $bnummer ?> #vardisplay')}, 750);
   $.ajaxSetup({ cache: false });
});
</script>

Объект, для которого я хочу всплывающую подсказку Tipsy (на моей странице), может выглядеть примерно так:

<div id="TipsyMe" title="I got tipsied">
     <p>Testpiece</p>
</div>

В настоящее время я пытаюсь добиться этой конкретной всплывающей подсказки, помещая этот скрипт на эту страницу, которая должна показывать «Я получил подсказку» в подсказке Типси:

<script>
$(function() {
        $("#TipsyMe").tipsy({gravity: 's'});
    });
</script>

В конечном итоге отображается обычная всплывающая подсказка браузера, в которой jQuery полностью игнорируется. Опять же, он работает нормально, когда я удаляю механизм автообновления на главной странице.

В этот момент я ошеломлен. Я гуглил последние несколько часов без какого-либо результата. Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 15 ноября 2011

в справочном документе вы можете наткнуться на опцию "live"

$(function() {
    $("#TipsyMe").tipsy({
        gravity: 's',
        live: true
    });
});

сделает это.(поскольку вы кажетесь новым, принятие ответа привлечет людей для вашего будущего ответа подсказка подсказка подсказка : P)

будьте осторожны: «живые подсказки не поддерживают ручной запуск».(из документа)

РЕДАКТИРОВАТЬ : не правильно увидел ваш код:

$(function() {
    $("div.someTotal").tipsy({
        gravity: 's',
        live: true,
        title: "I got tipsied"
    });
});

"someTotal" - это класс для всех "ящиков", гдеиметь значок редактирования и удаления.Если у вас еще нет такого класса, вы можете создать его (вы можете назвать его типичным для примера) и использовать его ($("div.tipsy").tipsy({...

...