2011-12-23 3 views
0
function ShowToolTip() { 
var values = document.getElementById('HiddenEmbedptt').value; 
if (values == "True") { 
    alert(1); 
    $("#flashbanner").tooltip({ 
     bodyHandler: function() { 
      return $("#divDesc").html(); 
     }, 
     track: true, 
     showURL: false, 
     delay: 0 
    }); 
} 
} 

Приведенный выше код используется для отображения всплывающей подсказки. Но странное поведение заключается в том, когда я добавляю предупреждение, содержимое всплывающей подсказки видно и когда я не добавляю предупреждение, содержимое всплывающей подсказки не видно.jQuery tooltip странное поведение

HTML код с оповещения

<div id="tooltip" style="display: block; top: 100px; left: 46px; right: 0pt;" 
class="viewport-right"><h3 style="display: none;"></h3><div class="body">My Tooltip 
Text</div><div class="url" style="display: none;"></div></div> 

HTML код без предупреждения

<div id="tooltip" style="display: block; left: 46px; right: 0pt; top: 100px;"><h3></h3> 
<div class="body"></div><div class="url"></div></div> 

Я не уверен, что может быть причиной и как предупреждение может изменить поведение кода?

Edit:

function getPlayerWidth() { 
alert(1); 
$(document).bind('mousemove', function(e) { 
    $("#first").text("e.pageX: " + e.pageX + ", e.pageY: " + e.pageY); 
    if (e.pageX >= 73 && e.pageX <= 340 ) { 
     //$("#divDesc").css({float:"right",position:"absolute",right:"0",clear:"left"}); 
     $("#tooltip").css({display:"block",left:"46px",right:"0",top:"100px",color:"red !important"}); 
    } 
    if (e.pageY >= 4 && e.pageX <= 290) { 
     //$("#divDesc").css({float:"right",position:"absolute",right:"0",clear:"left"}); 
     $("#tooltip").css({ display: "block", left: "46px", right: "0", top: "100px", color: "red !important" }); 
    } 
}); 
} 

ответ

0

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

Например, если ShowToolTip вызывается перед DOMReady, не может быть #flashbanner элемента, но если ввести предупреждение, то DOM будет время загрузки, а элемент будет найден к тому времени JavaScript двигателя продолжается для выполнения этой конкретной части кода.

Является ли DOMReady слушателем, что вам не хватает?

$(function() { 
    ShowToolTip(); 
}); 
+0

Да ShowToolTip() вызывается, как указано вами, но все-таки поведение такое же –

+0

могли бы вы предоставить [jsfiddle] (http://jsfiddle.net/) воспроизводя эту ошибку? –

+0

Прошу прощения, в этом есть много кода C#. –

Смежные вопросы