2012-01-20 35 views
0

我试图追加tp-lightboxactitemtp-lightboxcontainer。任何人都可以帮助我解决这个问题。它不工作,我希望lightbox的活动项目进入tp-lightboxcontainertp-lightboxactitem来它的中心。追加不工作在jQuery

$('body').append('<div id="tp-lightboxcontainer" class="'+opt.style+' lightboxitem"></div>'); 
     var tp-lightboxcontainer=find('#tp-lightboxcontainer'); 
     tp-lightboxcontainer.append('<div id="tp-lightboxactitem" class="'+opt.style+' lightboxitem"></div>'); 
+0

您的代码将不能运行,因为它的语法错误,这不是jQuery的追加。 'var tp-lightboxcontainer'应该是类似于'var tp_lightboxcontainer' – Esailija

回答

1
$('<div id="tp-lightboxcontainer" class="'+opt.style+' lightboxitem"></div>') 
    .appendTo('body') 
    .append('<div id="tp-lightboxactitem" class="'+opt.style+' lightboxitem"></div>'); 

你真的只有一个对象在这里工作,所以你可以在一行中做到这一点。 jsFiddle

  1. 使容器(目标容器)
  2. 追加到<body>(还是目标容器)
  3. 附加您的项目到容器(还是目标容器)

PS:如果你想用这个容器来获得更多的东西,你可以在它前面放置var whatever =来缓存它。

+0

你能告诉我什么时候tp-lightboxcontainer没有任何css改变 –

0

是的。代码在语法上不正确,正如Esailija所说。我有以下工作和正确的代码: 完成的更改:

  1. 选择需要在之前正确定义。
  2. 变量名称不应该有' - ',但可以有'_',而不像Esailija所说的那样。
  3. 查找操作在该代码中被错误地完成。
var opt=""; 

// op can be whatever defined before in the code. 
$('body').append('<div id="tp-lightboxcontainer" class="myClass" lightboxitem"></div>'); 

//Find updated. 

var tp_lightboxcontainer=$("body").find('#tplightboxcontainer'); 

tp_lightboxcontainer.append('<div id="tp-lightboxactitem" class="'+opt.style+' lightboxitem"></div>');