在JSF(特别是primefaces)中处理ajax按钮时,可以将鼠标光标的窗体更改为繁忙模式(例如:沙漏)?我想改变光标的形式,而当我导航到下一页时,我的p:dataTable正在加载数据。谢谢。当PrimeFaces ajax请求正在进行时,将鼠标光标更改为繁忙模式
7
A
回答
9
你可以用CSS和jQuery的一点帮助实现这一目标。使用CSS,您可以创建一个类来更改整个文档上的光标。使用jQuery,您可以添加/删除该CSS类。在封面之下,PrimeFaces使用jQuery作为Ajax魔术,并且您可以针对PrimeFaces标准jQuery ajaxStart
和ajaxStop
事件以及针对PrimeFaces特定pfAjaxSend
和pfAjaxComplete
事件执行添加/移除该CSS类的PrimeFaces 4+挂钩。
CSS:
html.progress, html.progress * {
cursor: progress !important;
}
(所述!important
覆盖任何样式由style
属性和更强的CSS选择的情况下设定)
jQuery和PrimeFaces:
$(document).on("ajaxStart pfAjaxSend", function() {
$("html").addClass("progress");
}).on("ajaxStop pfAjaxComplete", function() {
$("html").removeClass("progress");
});
对于你在其他地方也使用标准JSF <f:ajax>
的情况乌尔德喜欢有相同的进度指示器,这里是你如何能做到这一点:
jsf.ajax.addOnEvent(function(data) {
$("html").toggleClass("progress", data.status == "begin");
});
这也被用于OmniFaces showcase application。当您在this page运行投票时,您可以看到它。
0
Primefaces本身并不像它那样。它有一些组件可以让你可视化它的工作时间(AjaxStatus,BlockUI),但它看起来并不像它对光标做任何事情。
你必须直接使用Javascript来做到这一点。这看起来像一个不错的选择。
+0
我明白了..希望它会很快加入到它的组件中..感谢您的回复:) – David
相关问题
- 1. 更改光标时UI忙
- 2. 当将GetStockObject(WHITE_BRUSH)更改为GetStockObject(GREY_BRUSH)时松动鼠标光标
- 3. 将鼠标光标更改为箭头
- 4. 将页面加载时将光标变为繁忙
- 5. 将默认光标更改为忙光标不能正常工作
- 6. 在flex中动画繁忙的光标?
- 7. 如何在鼠标左键关闭时更改鼠标光标?
- 8. WPF将鼠标光标更改为抓取时的手
- 9. Qt:拖动时更改鼠标光标
- 10. 当鼠标悬停在TreeNode上时,如何更改光标?
- 11. 在Ajax请求中进入“繁忙”状态的浏览器
- 12. 将鼠标悬停在JSplitPane分隔线上时更改光标
- 13. 光标在鼠标点击更改
- 14. 当鼠标位于节点上时,如何将光标更改为指针
- 15. 在Share Point中更改鼠标光标
- 16. jQuery CSS - 强制光标根据请求更改(不仅在鼠标在请求后移动时)?
- 17. asp:gridview在鼠标悬停时在标头中更改光标
- 18. 将光标更改为沙漏/等待/忙碌光标并返回Qt
- 19. 在Silverlight中更改鼠标光标
- 20. 在处理中更改鼠标光标
- 21. 仅当特定元素超过鼠标光标时才更改
- 22. 当拖动浮动时更改鼠标光标QDockWidget
- 23. 如何更改鼠标光标图标?
- 24. C#Winforms - 更改鼠标光标图标
- 25. 鼠标悬停在ScrollableControl的滚动条上时忙光标
- 26. 行为和繁忙的指标
- 27. 将鼠标光标更改为绘图面板中的铅笔
- 28. 将鼠标光标更改为HTML中的输入元素
- 29. 如何在鼠标移动前动态更改光标样式时更改光标
- 30. 更改鼠标光标在按钮上 - 正常指针
谢谢!我会试试看.. :) – David