1

Buget を使用して ASP.NET MVC アプリケーションにインストールされた Twitter Bootstrap を使用しています。しかし、以前は localhost で動作していたすべてのブートストラップ JavaScript が、Web ホスティング プロバイダーにアップロードされると、実際にはすべて動作を停止していることに驚きました。

私はこれに完全にぶつかり、何が悪いのか理解できません。

4

2 に答える 2

9

jQuery に依存するスクリプトの一部は、jQuery が読み込まれる前に含まれています。

  • bootstrap-dropdown.js は jQuery の前に含まれています
  • 75行目のカスタムjavascriptはjQueryの前に含まれています

引っ越すことをお勧めします

<script src="/Scripts/bootstrap.js" type="text/javascript"></script>
<script type="text/javascript" src="http://twitter.github.com/bootstrap/assets/js/bootstrap-dropdown.js"></script>

jQueryバンドルが含まれた後、75行目からページの下部までのカスタムjavascript。または、jQuery バンドルを<head>. どちらを選択するかはあなた次第です - 次の質問を参照してください: Jquery コードはヘッダーまたはフッターに入れる必要がありますか? その特定の問題に関して...

リモートサーバーではなくローカルボックスで動作しているとあなたは言います-それが本当にそうである場合、これは、デバッグモードかリリースモードかによってバンドル/ミニフィケーションの動作が異なるという事実に関係していると思います。


更新 基本的に、デバッグ ビルドでは、スクリプトと css に対してバンドル/縮小は実行されません。バンドルで参照する と はそれぞれ別のファイルとして含まれ、変換は適用されませ<link>ん。<script>リリース ビルドでは、バンドル内のファイルが 1 つのファイルに連結され、縮小などの変換が適用されます。あなたのコメントによると、ローカル サイトと公開サイトの両方でデバッグ動作を取得するには、次の 3 つのオプションがあります。

1. リリース ビルドで、web.config でコンパイル デバッグ フラグを true に設定します。

すなわち

<system.web>
    <compilation debug="true" />
    <!-- Lines removed for clarity. -->
</system.web>

通常、リリース ビルドにデバッグ中のフラグを付けるべきではないため、これは特にお勧めしません。しかし、これは、リリース ビルドをすばやく切り替えて、オフのときに javascript/css が正しく機能するかどうかを確認するのに便利な設定です。

2. コードで、バンドル テーブルでバンドルの最適化をオフにします。

public static void RegisterBundles(BundleCollection bundles)
{
    // other code...
    BundleTable.EnableOptimizations = false;
}

3. やらないでください。

動作の違いは設計によるものであり、理にかなっています。開発を行っているローカル ボックスでは、すべての個々のスクリプト/css ファイルを縮小されていない形式で表示できるため、デバッグがはるかに簡単になります。公開されると、ファイルは 1 つの圧縮ファイルに圧縮されるため、サイトの読み込み時間が短縮されます。

個人的にはオプション 3 をお勧めします。スタイル/スクリプトが正しい順序で含まれていることを確認してください。

于 2013-04-04T16:33:38.470 に答える
1

あなたのページには

 <link href="/Content/bootstrapcss" rel="stylesheet"/>  

...ファイルタイプにブリップがあります。おそらくこれはそうあるべきです

 <link href="/Content/bootstrap.css" rel="stylesheet"/> ? 

また、Modernizr ファイルにパスの問題があります。パスが正しく、ファイルが存在することを確認してください。

http://bipscore.com/Scripts/modernizr-1.7.min.js  

他にも問題があるかもしれませんが、最初にこれら 2 つを修正しても問題ありません。

幸運を!

于 2013-04-04T16:21:05.643 に答える