【发布时间】:2011-01-03 18:56:04
【问题描述】:
I am trying to animate background images on my site, when a background image is selected I want it to slide in from the left and push the old background out of picture, can anybody help with the code as the stuff I have written不工作,
<script type="text/javascript">
$("a.background_btn").click(function(ev){
ev.preventDefault();
// alert("hello");
var url = $(this).attr("href");
// alert(url);
$.ajax ({
url : url,
type: "POST",
success : function (data) {
$('#wrapper').css('background', 'url(/media/uploads/backgrounds/'+(data)+')');
$('#wrapper').css('background-position', '-1000px 0px');
$('#wrapper').css('background-repeat', 'no-repeat');
$('#wrapper').animate({backgroundPosition: '0px 0px'})
}
})
});
【问题讨论】:
-
您能否也发布您的相关标记,并让我们知道您所写的正在在做什么,因为这将是一个很好的起点,可以帮助您到达您想去的地方.
-
目前,当我选择我想要的背景时,它会清除旧背景并将新背景滑入我希望我也可以将旧背景滑出
-
你到底为什么用ajax调用一个url来获取另一个url的一部分?
-
该 url 只是对我的控制器中的一个方法的调用,该方法为在 URL 中有效发送的 ID 获取适当的背景,在页面上有链接 mysite.co.uk/set_background/2,它获取背景图像id 为 2
-
关于获取 url 的 ajax 调用,如果您在初始页面上解析这些背景 Url 而不是额外的 ajax 请求,您会发现更好的性能。您可以直接在 href 属性中解析它,或者写出一个 json 对象直接在页面中查找:var lookup={"href1":"url1","href2":"url2"}; 然后查找 url 看起来像 var url = lookup[$(this).attr("href")]
标签: javascript jquery jquery-plugins jquery-animate