cfdivバインディングを使用するときのインタースティシャルグラフィックの無効化
-
02-07-2019 - |
質問
「読み込み中...」を保持する方法はありますか? cfdivの更新時にグラフィックが表示されませんか?グラフィックをロードしてから新しいhtmlをロードするちらつきを防ぎたい。
解決
これらの行をヘッダーの下部に追加することで、「読み込み中...」を上書きします; htmlおよびIEとFireFoxの両方でちらつき効果を防ぐようです:
<script language="JavaScript">
_cf_loadingtexthtml="";
</script>
これはトリックを行うように見えますが、ページごとまたはコントロールごとにロードアニメーションをカスタマイズする公式にサポートされた方法があればいいでしょう。 ColdFusion9でサポートが追加されることを願っています。
他のヒント
cfdiv
タグ内でこれをプログラムで行う方法は現在ないと思います。その「読み込み中...」を本当に取り除きたい場合メッセージと画像、あなたが見ることができるいくつかの場所があります。
次の場所にあるイメージの名前を変更または削除できます。 CFIDE \ scripts \ ajax \ resources \ cf \ images \ loading.gif
それはアニメーションを取り除くだけです。 「読み込み中...」テキストは空の文字列に空白にすることができ、次で定義されます: CFIDE \ scripts \ ajax \ messages \ cfmessage.js
これらの変更を行うと、明らかに cfdiv
以外のタグに影響を与えますが、この動作を1か所で排除したい場合は、他の場所で強制終了してもかまいません。も。 :)
他の誰かが何かアイデアを持っている場合、これを行うためのよりクリーンな方法が見たいです。
これは決して包括的またはエレガントなソリューションではありませんが、隣接する要素に負のマージンを使用すると「カバー」できることがわかりました。アニメーション。この方法がすべてのケースで機能するかどうかはわかりませんが、私の特定のケースでは機能しました。バインドされたテキストフィールドの横にアニメーションが表示され、その右側には送信ボタンがありました。レイヤーは右に浮いていました。送信ボタンに負のマージンを使用し、レイヤーの配置に影響を与えずにアニメーションをカバーしました。
もう1つの対策は、レイヤー構造を確認することで、次のコードをcssに追加しました。
#TitleNameloadingicon {visibility:hidden;}
#TitleName_cf_button {visibility:hidden;}
#TitleNameautosuggest {background-color:#ffffff;}
メッセージと画像を新しい値に設定できるajaxロードを呼び出す前に、メッセージを変更する関数を作成できます。
function loadingOrder(){
_cf_loadingtexthtml="Loading Order Form <image src='/CFIDE/scripts/ajax/resources/cf/images/loading.gif'>";
}
function loadingNavigation(){
_cf_loadingtexthtml="Loading Menu <image src='/CFIDE/scripts/ajax/resources/cf/images/loading_nav.gif'>";
}
(これらは最終的に、text_valueパラメーターとimage_pathパラメーターの両方を受け取る単一の関数にロールバックされます)
メインナビゲーションと左ナビゲーションの両方のcfdivを読み込むいくつかのプロセスでは、次のような関数を使用します。
function locateCreateOrder(){
loadingOrder();
ColdFusion.navigate('/functional_areas/orders/orders_actions/cf9_act_orders_index.cfm','main_content');
loadingNavigation();
ColdFusion.navigate('/functional_areas/products/products_actions/cf9_products_menu.cfm','left_menu');
}