我安装了一个jQuery插件Backstretch并使用我的Refinery Rails应用程序。
该插件加载我在
中列出的1张图片 //= require 'jquery-backstretch'
$.backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjcvMjJfNTZfMjRfOTkyX3NsYXRlX2JnLnBuZyJdXQ/slate-bg.png");
我试图从我发现的一个例子开始说“使用if / else语句加载backstretch。即if($("body#about"))....else if($("body#contact")...";
但是我真的不知道怎么写这个。这是我尝试的:
//= require 'jquery-backstretch'
if ($"body#home"($.backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjcvMjJfNTZfMjRfOTkyX3NsYXRlX2JnLnBuZyJdXQ/slate-bg.png"));
else if ($"body#our-passion".backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjUvMDBfMTlfMjlfMzgyX2JnXzFfYmlnLnBuZyJdXQ/bg-1-big.png"));
写这个的正确方法是什么?或者有更好的方法来实现这种效果吗?
答案 0 :(得分:1)
首先,为什么在id之前需要身体?即 body #home
由于#home和#our-passion都是ids,所以看起来你不需要身体。
关于你的问题: 我认为这就是你想要的,尽管你实际上想要达到的目标有点模糊:
if ($("#home").length != 0) {
$.backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjcvMjJfNTZfMjRfOTkyX3NsYXRlX2JnLnBuZyJdXQ/slate-bg.png");
} else if ($("#our-passion").length != 0) {
$.backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjUvMDBfMTlfMjlfMzgyX2JnXzFfYmlnLnBuZyJdXQ/bg-1-big.png");
}
我可以解释这个错误。也许你正试图为#home和#our-passion添加一个后弯?
希望这有帮助!
修改强> 这是我们的激情页面应该包含在HTML中:
<!DOCTYPE html>
<html lang="en">
<head>
...
</head>
<body>
<div id="our-passion"></div>
</body>
</html>
还有其他方法可以做到这一点,但这是根据你的问题做的。
答案 1 :(得分:0)
这可以通过推荐
来实现$(".show").backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjcvMjJfNTZfMjRfOTkyX3NsYXRlX2JnLnBuZyJdXQ/slate-bg.png");
$(".home").backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjUvMDBfMTlfMjlfMzgyX2JnXzFfYmlnLnBuZyJdXQ/bg-1-big.png");
在application.js文件中的- 并包含正文的内容及其对应的div。