我正在更改用戶某些操作中的一些dijits的禁用屬性。它的作品,但小部件的css不會得到更新,除非被徘徊,或基本上觸發小部件上的任何事件。我怎樣才能解決這個問題?我錯過或做錯了什麼? 我正在使用Firefox 8.0.1瀏覽器。刷新css通過javascript來切換dijit小部件的「禁用」屬性
1
A
回答
1
我在做這樣的事情
widget.disabled = (condition)?"disabled":"";
(其實我的代碼是不同的,但它在做類似的功能。)
這是造成的,因爲在dijit的小部件可能不知道什麼時候更改代碼的直接屬性。我不好意思,我直接做了,而不是使用set
API(這隻針對dijit小部件,或許我應該改變我的問題具體?)。
widget.set("disabled", condition);
我也得到了成功做dojo.removeClass(widget, "dijitDisabled");
(有很多班「已禁用」狀態),但這種做法是幼稚的,最後我得到了上述方案,這是很好,標準,簡潔。
+0
是的,這當然是因爲dijit,單獨的關鍵詞不是很明顯。 – RoToRa 2012-02-20 10:34:22
0
您可以在UI發生特定操作時調用JS方法。
我這樣做的方式如下:
function disablewidget{
if (navigator.appName == "Microsoft Internet Explorer") {
var child = document.getElementById("id_of_your_widget");
child.setAttribute("className", "disabled_class");
}
else{
document.getElementById("id_of_your_widgets").className = "disabled_class";
}
}
這裏disabled_class
是我與行動的CSS文件中定義一個類,我需要執行時,我想展現給用戶禁用元素(改變背景等..)
希望這會有所幫助。
相關問題
- 1. 切換禁用屬性
- 2. 通過代碼刷新Android小部件。
- 3. 切換CSS的Javascript已禁用
- 4. Dojo Dijit - 小部件內的小部件
- 5. 切換滾動CSS屬性
- 6. 如何在通過外部CSS文件應用javascript時訪問css屬性?
- 7. CSS通過數據屬性不會刷新/重繪
- 8. 應用通過id屬性CSS屬性
- 9. 將數據屬性保存在dijit小部件中
- 10. 通過JavaScript更改CSS屬性
- 11. 通過Javascript更改CSS屬性
- 12. 通過單擊Google地圖標記來切換ngShow屬性
- 13. 如何通過調用Kivy Python中的函數來設置小部件屬性?
- 14. Android SwipeRefreshLayout禁用通過拉動刷新
- 15. API12的切換小部件
- 16. 啓用/禁用Javascript切換
- 17. 無法通過javascript控制CSS底部屬性
- 18. jQuery的切換與CSS屬性
- 19. Javascript功能來通過其屬性
- 20. 使用Javascript切換圖像src屬性
- 21. 通過選中複選框來禁用切換字段集
- 22. 通過切換來激活和禁用GameObjects - 增強現實
- 23. 切換Dojo dijit的顯示
- 24. 禁用繼承過渡(全部)只有一個CSS屬性
- 25. Javascript自動刷新切換複選框
- 26. Elgg - 通過ajax擴展小部件標題 - 切換內容
- 27. OrientDB更新屬性通過JavaScript
- 28. 過渡CSS「變換」屬性
- 29. Android小部件刷新
- 30. 刷新小部件功能
你的意思是「他的CSS沒有更新」?你的CSS是什麼樣的?你在使用屬性選擇器嗎?如何更改'disabled'屬性?換句話說:你需要顯示代碼。 – RoToRa 2012-02-20 09:58:22
@RoToRa:我的意思是,用於區分正常狀態的禁用小部件的css沒有使用我的代碼設置wd.disabled =「disabled」打開/關閉,除非觸發了任何事件。 – 0xc0de 2012-02-20 10:29:06