0

jQuery プラグインBackstretchをインストールして、Refinery Rails アプリと連携させています。

プラグインは、私がリストした1つの画像をロードします

アプリケーション.js

    //= require 'jquery-backstretch'
$.backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjcvMjJfNTZfMjRfOTkyX3NsYXRlX2JnLnBuZyJdXQ/slate-bg.png");

「if/elseステートメントを使用してバックストレッチをロードします。つまりif($("body#about"))....else if($("body#contact")...";、これを適切に記述する方法が本当にわかりません。私が試したのは次のとおりです。

アプリケーション.js

    //= 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"));

これはどう書くのが正しいのでしょうか?または、この効果を行うためのより良い方法はありますか?

4

2 に答える 2

1

まず、ID の前に body が必要なのはなぜですか? つまり、ボディ#ホーム

#home と #our-passion は両方とも id であるため、そこに body が必要なようには見えません。

あなたの質問について:これはあなたが望むものだと思いますが、実際に達成しようとしていることは少し曖昧です:

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 にバックストレッチを追加しようとしているのかもしれません。

お役に立てれば!

EDIT ここでは、私たちの情熱ページを HTML で構成する必要があります。

<!DOCTYPE html>
<html lang="en">
  <head>
    ...
  </head>
  <body>
    <div id="our-passion"></div>
  </body>
 </html>

これを行う方法は他にもありますが、これはあなたの質問に従って行う方法です。

于 2013-03-28T17:14:24.833 に答える
0

これは

$(".show").backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjcvMjJfNTZfMjRfOTkyX3NsYXRlX2JnLnBuZyJdXQ/slate-bg.png");
$(".home").backstretch("/system/images/W1siZiIsIjIwMTMvMDMvMjUvMDBfMTlfMjlfMzgyX2JnXzFfYmlnLnBuZyJdXQ/bg-1-big.png");

application.js ファイル内 - ボディのコンテンツと対応する div を含みます。

アップデート:

このスクリプトを別のビューで実行することになりました。

于 2013-03-28T21:28:15.567 に答える