2011-04-12 31 views
0

我有以下功能,采取a.preview的标题,并将其附加在p#preview,一些在悬停时生成的AJAX内容。这是总体发生的一小部分,但以下脚本中的变量c应该是a.preview的标题。出于某种原因,我得到一个空响应。标题在其他地方打印,所以我知道这不是问题,而是要么在变量定义中,要么在调用变量。任何调试建议?获取<a>标题和打印作为使用javascript的标题

$("a.preview").hover(function(e){ 
    this.t = this.title; 
    this.title = "";  
    var c = (this.t != "") ? "<br/>" + this.t : ""; 
    $("body").append("<p id='preview'><img src='"+ this.href +"' alt='Image preview ... Loading' />"+ c +"</p>"); 
    $("#preview") 
      .hide() 
     .css("top",(e.pageY - yOffset) + "px") 
     .css("left",(e.pageX + xOffset) + "px") 
     .fadeIn("2000");       
}, 
+0

我的错误。 NVM。 – mattsven 2011-04-12 17:42:56

+0

为什么不只是'var t'而不是'this.t'呢?你是否有意设置一个新属性? – mattsven 2011-04-12 17:47:33

+0

'this.t'是因为内容是AJAX,并且有很多实例都有自己独特的标题,需要以不同的方式打印。 – Brian 2011-04-12 17:49:24

回答

0

看一看这对小提琴: http://jsfiddle.net/jsNcn/

看起来好像没什么问题?

+0

这很奇怪。它在这里很好。试试这个:http://jsfiddle.net/jsNcn/1/ – Jafu 2011-04-12 17:59:49

+0

嗯......不,我的错。你的例子正在工作。现在,如果我能弄清楚为什么我的不是:/ – Brian 2011-04-12 18:01:12

+0

也许你需要向我们展示更多的代码。你最终意识到这个逗号?应该换成); - 就像我的例子。 – Jafu 2011-04-12 18:03:44