2011-08-17 28 views
1

我正在为我的网站制作一个自定义组合库,并且遇到问题。用jQuery在ID上面放置东西

我想让画廊向上滑动,当你点击一个缩略图,但没有立即将所有图像放在页面上。页面设置是这样的:

[ main img ] 
(hidden placeholder) 
    [1][2][3][4][5] 

和代码应该像这样:

  1. 点击拇指得到SRC属性
  2. 广场<img src="original+_lg.jpg" />上述(hidden placeholder)<div id="placeholder">
  3. margin-top减去500px以使用CSS3向上滑动图像

我尝试过自己编写脚本,但是我对jQuery很糟糕,而且效果不好。我设法改变了margin-top,但只是手动的,而不是循环,这将是理想的。

我的代码是:

$(document).ready(function() { 
$("#thumb").click(function() { 
    $("#mask").css({ 
     "margin-top":"-500px" 
    }); 
    $('img#placeholder').attr('src',function(i,e){ 
     return e.replace("slides/thumb_lg.jpg"); 
    }) 
}); 

});

正如你所看到的那样,它并没有真正的工作。

我很失望,我不知道这一点,因为我设法实际上体面的主页(http://beta.jacobbearce.com/

我真的很欣赏的帮助编写的jQuery。谢谢!

编辑:小澄清:

这将会是为这个伟大的脚本,让你点击拇指的SRC属性,去掉最后四个字符(摆脱.JPG的),然后加入在_lg.jpg上显示正确的大图像,将新的<img src="original+_lg.jpg">放在占位符div上方,然后从边距减去500px,以便它向上滑动以显示新图像。我知道有点复杂,但这对我正在尝试做的事情是最好的。

+0

难道是你的'replace'函数中只有一个参数,当你有两个?你能发布相应的HTML吗? – sdleihssirhc

回答

2

您可以使用.before()隐藏的占位符之前插入新的图像到DOM:根据需要

$('#placeholder').before('<img src="original+_lg.jpg" />'); 

然后调整幅度。

+0

啊谢谢,这清除了它的一部分。 – JacobTheDev

+0

你能澄清第二部分吗?当它不起作用时,你是如何尝试更改保证金的? –

+0

我想要做的是让它做一些数学运算,所以当你添加一张新图片时,它会有一些像'margin = originalMargin -500px'这样的东西,因为每次添加图片时,它都必须向上移动额外500px显示图像。 – JacobTheDev