1

ショートカット: EXT = ExtJS4アプリケーションASP =Asp.NetMVC3アプリケーション

ExtJS4アプリケーションのビューで設定された画像の読み込みに問題があります。このアプリケーションは、Asp.NETMVC3プロジェクトの一部です。私のEXTフォルダーには、SenchaMVCアプリケーションの古典的な構造があります。ASPプロジェクトでは、EXTフォルダーはroot + "/ Sencha /WebClient/"にあります。EXTのビューで、次のようなボタンのアイコンへのパスを設定しました。

icon: 'images/common/desktop/btnStart.png'

.jsファイルはASPビューフォルダで実行されると思うので、画像が読み込まれません。EXTがビューやコントローラーなどを見つけるためにappFolderを「/Sencha/ WebClient /」に設定しましたが、アイコンパスは「/ Sencha /WebClient/」ではなく「images/common / desktop/btnStart.png」のままです。 images / common / desktop/btnStart.png」。

この問題を解決するための解決策はありますか?

4

1 に答える 1

1

それはそのようには機能しません。cssスタイルとして適用されるアイコンプロパティ。私はDOMでそれが次のように見えることを提案します

style="...; background-image: url(images/common/desktop/btnStart.png);"

したがって、jsスクリプトがどこに配置されていても関係ありません。この画像パスは現在のページのURLを基準にしているため、このスタイルは期待どおりに適用されません。ただし、絶対パスを指定すると機能します。

sass / scss + compassを使用し、画像パスを使用する代わりにcssクラスを使用することをお勧めします。画像パスを設定したり、指定した背景画像を適用するミックスインを多用したりできます

@mixin backgroundImage($img) {
    $imagesRoot: '/Sencha/WebClient/images/';
    @include background-image($imagesRoot + $img);  
}

.btnStart {
    @include backgroundImage('common/desktop/btnStart.png');
}

次に、ボタン構成で使用します

iconCls: 'btnStart'
于 2012-09-15T08:11:18.457 に答える