2009-08-18 50 views
0

好吧我修復了原來的問題,但我現在想要將標題值從id =「contact-info」彈出之前添加回id =「contact」的錨標記我刪除彈出jQuery工具提示未按預期工作 - 修訂

的JS

this.contactPreview = function() { 
jQuery("a.contact").click(function(e){ 
     this.t = this.title; 
     this.title = ""; 
     var c = (this.t != "") ? "<br />" + this.t : ""; 
     jQuery("body").append("<p id='contact-info'>"+ this.t + "<a id='close-contact' class='close-contact' style='color:red;'>Close</a></p>"); 
     jQuery("#contact-info") 
      .css("top", (e.pageY - xOffset) + "px") 
      .css("left", (e.pageX + yOffset) + "px") 
      .fadeIn(500); 
    }); 

    jQuery("a.close-contact").live('click', function(){ 
     // Need to re-insert the popup info into the original title tag of contact 
     jQuery('#contact-info').remove();   
    }); 
}; 

// Use jQuery() instead of $()for WordPress compatibility with the included prototype js library which uses $() 
// http://ipaulpro.com/blog/tutorials/2008/08/jquery-and-wordpress-getting-started/ 
// See http://chrismeller.com/using-jquery-in-wordpress 
jQuery(document).ready(function(){ 

    // Call the function here 
    contactPreview(); 

}); 

的CSS

#contact-info{ 
    position:absolute; 
    border:1px solid #ccc; 
    background:#333; 
    padding:5px; 
    display:none; 
    color:#fff; 

的HTML

<a class='contact' title='Some info to display'>Display Info</a> 

在此先感謝您的任何幫助

+1

@Phill Pafford - 如果您的原始問題已解決,您應該打勾解答它的答案並提出另一個問題。 – karim79 2009-08-18 19:30:44

回答

0

http://docs.jquery.com/Events/live將做的伎倆。

這會在CLOSE <A>創建時自動添加點擊事件。您所做的是在文檔加載時添加事件,但尚未加載CLOSE <A>

$("a.close-contact").live("click", function() 
{ 
    $(this).fadeOut(500); 
}); 
+0

所以我添加live()來同時點擊()? – 2009-08-18 19:21:38

+0

只有使用代碼創建的點擊。 – 2009-08-18 19:24:04

+0

嗯,這似乎解決了問題之一,現在我可以讓警報功能工作,但它不能找到原始標記的ID刪除它。順便說一句我加了live()到彈出 – 2009-08-18 19:24:21