0
+ * Simple XPath Compatibility Plugin for jQuery 1.1
0
+ * Dual licensed under MIT and GPL.
0
+ var find = jQuery.find;
0
+ jQuery.find = function(selector, context){
0
+ // Remove the // at the start of the selector
0
+ selector = selector.replace(/^\/\//g, "");
0
+ // Convert the root / into a different context
0
+ if ( !selector.indexOf("/") ) {
0
+ context = context.documentElement;
0
+ selector = selector.replace(/^\/\w*/, "");
0
+ selector = selector.replace(/\/\//g, " ");
0
+ selector = selector.replace(/\//g, ">");
0
+ // Naively convert [elem] into :has(elem)
0
+ selector = selector.replace(/\[([^@].*?)\]/g, function(m, selector){
0
+ return ":has(" + selector + ")";
0
+ // Naively convert /.. into a new set of expressions
0
+ if ( selector.indexOf(">..") >= 0 ) {
0
+ var parts = selector.split(/>\.\.>?/g);
0
+ var cur = jQuery(parts[0], context);
0
+ for ( var i = 1; i < parts.length; i++ )
0
+ cur = cur.parent(parts[i]);
0
+ return find(selector, context);