当cfdiv刷新时,有没有办法让“Loading ...”图形不显示?我想阻止加载图形然后加载新的html的闪烁。
答案 0 :(得分:4)
通过在标题的底部添加这些行,它会覆盖“Loading ...”html并且似乎可以防止IE和FireFox中的闪烁效果:
<script language="JavaScript">
_cf_loadingtexthtml="";
</script>
虽然这似乎可以解决问题,但如果有一种官方支持的方式来定制每页或每个控件的加载动画,那将会很不错。希望他们在ColdFusion9中添加对它的支持。
答案 1 :(得分:1)
我认为目前无法在cfdiv
标记内以编程方式执行此操作。如果你真的想摆脱那个“正在加载...”的消息和图片,你可以看几个地方。
您可以重命名或删除位于以下位置的图片: CFIDE \ scripts \ ajax \ resources \ cf \ images \ loading.gif
只能摆脱动画。 “正在加载...”文本可以空白为空字符串,并在以下内容中定义: CFIDE \ scripts \ ajax \ messages \ cfmessage.js
进行这些更改显然会对cfdiv
以外的标记产生影响,但如果您希望在一个地方消除此行为,我相信您也不会介意在其他任何地方将其删除。 :)
如果其他人有任何想法,我很乐意看到更清洁的方法。
答案 2 :(得分:1)
这绝不是一个全面或优雅的解决方案,但我发现在相邻元素上使用负边距可以“覆盖”动画。我不知道这种方法是否适用于所有情况,但对于我的特殊情况,它是有效的。动画显示在绑定文本字段旁边,其右侧是提交按钮。该层浮动到右侧。我在提交按钮上使用了负边距,它覆盖了动画而不影响图层对齐。
我做的另一项措施是检查图层结构,并将以下代码添加到我的css中确定:
#TitleNameloadingicon {visibility:hidden;}
#TitleName_cf_button {visibility:hidden;}
#TitleNameautosuggest {background-color:#ffffff;}
答案 3 :(得分:0)
您可以在调用可以将消息和图像设置为新值的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');
}