Yes, that's it. We really don't support very much XPath, only a couple
commands. That was a big reason why it was removed, we didn't have to
resources or interest to flush it out into a full XPath
representation.
--John
On 9/28/07, Danjojo <[EMAIL PROTECTED]> wrote:
>
> Is this all I need to add to my external .js library to fully include
> the Xpath plugin?
>
> /*
> * Simple XPath Compatibility Plugin for jQuery 1.1
> * By John Resig
> * Dual licensed under MIT and GPL.
> */
>
> (function(jQuery){
>
> var find = jQuery.find;
>
> jQuery.find = function(selector, context){
>
> // Convert the root / into a different context
> if ( !selector.indexOf("/") ) {
> context = context.documentElement;
> selector = selector.replace(/^\/\w*/, "");
> if ( !selector )
> return [ context ];
> }
>
> // Convert // to " "
> selector = selector.replace(/\/\//g, " ");
>
> // Convert / to >
> selector = selector.replace(/\//g, ">");
>
> // Naively convert [elem] into :has(elem)
> selector = selector.replace(/\[([EMAIL PROTECTED])\]/g,
> function(m, selector){
> return ":has(" + selector + ")";
> });
>
> // Naively convert /.. into a new set of expressions
> if ( selector.indexOf(">..") >= 0 ) {
> var parts = selector.split(/>\.\.>?/g);
> var cur = jQuery(parts[0], context);
>
> for ( var i = 1; i < parts.length; i++ )
> cur = cur.parent(parts[i]);
>
> return cur.get();
> }
>
> return find(selector, context);
> };
>
> })(jQuery);
>
>