aboutsummaryrefslogtreecommitdiffstats
path: root/ui/ui.core.js
diff options
context:
space:
mode:
Diffstat (limited to 'ui/ui.core.js')
-rw-r--r--ui/ui.core.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/ui/ui.core.js b/ui/ui.core.js
index 2cf48d11f..be0caa920 100644
--- a/ui/ui.core.js
+++ b/ui/ui.core.js
@@ -437,4 +437,31 @@ $.ui.mouse.defaults = {
delay: 0
};
+
+// WAI-ARIA Semantics
+var isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9);
+$.fn.extend({
+ ariaRole : function(role) {
+ // setter?
+ if (role) {
+ return this.each(function(i, el) {
+ $(el).attr("role", isFF2 ? "wairole:" + role : role);
+ });
+ }
+ // getter just returns first jquery member's role string
+ return (this.eq(0).attr("role") || "").replace(/^wairole:/, "");
+ },
+
+ ariaState : function(state, value) {
+ // setter?
+ if (value)
+ return this.each(function(i, el) {
+ isFF2? el.setAttributeNS("http://www.w3.org/2005/07/aaa", "aaa:" + state, value) :
+ $(el).attr("aria-" + state, value);
+ });
+ // getter
+ return this.attr(isFF2? "aaa:"+state : "aria-" + state);
+ }
+});
+
})(jQuery);