Unfortunately jQuery selectors are not supported on Document Fragments. Fragments are quite feature-poor and don't even provide basic DOM-querying functionality in some browsers. For example the following will return undefined in Firefox 3:
javascript:alert(document.createDocumentFragment().getElementsByTagName) Browsers are starting to get better support by implementing the Selectors API (querySelectorAll, etc.) on fragments - but it'll be a while before widespread adoption occurs. --John On Fri, Jun 12, 2009 at 5:06 AM, amit<amit.jag...@gmail.com> wrote: > > Hi, > > I am writing an application that converts an ajax xml response into > html using client side xslt transformation. The transformation is > achieved using following snippet, which works fine - > > transform:function(xml){ > if (window.XSLTProcessor){ > var xsltProcessor = new XSLTProcessor(); > xsltProcessor.importStylesheet(Xmer.xsldoc); > var outputXHTML = > xsltProcessor.transformToFragment(Xmer.makeXml > (xml), document); > document.getElementById('tree').appendChild > (outputXHTML.cloneNode > (true)); > } > else if(window.ActiveXObject){ //Internet Explorer > var d=Xmer.makeXml(xml); > var outputXHTML = (d).transformNode > (Xmer.xsldoc); > document.getElementById > ('tree').innerHTML=outputXHTML; > } > } > > But problem is encountered in FF when i try to process the inserted > tags using jquery's find method. I am trying to fetch all the divs > with a specific class name that were inserted by the above code; using > the following - > var d=$document.find('div.pointer'); > alert ('div.pointer').length; > alert (d.length); > > but the above alerts always return "0" length. The same code works > fine in IE. I am using jquery 1.3.2. > > to add more to the above, I did some research on documentFragments and > found > following on http://ejohn.org/blog/dom-documentfragments/#comment-319149 > (need to click "Show Comments" to reach this place) - > > "# Obvious, but sometimes overlooked: the fragment is self contained. > This means, the fragment doesn't have access to objects outside of it > (i.e. part of the main document). Thus, even if you have CSS classes > (class attribute) set in an element, it is not possible to query based > on properties set and/or modified by that CSS class. Basically the > classes set in the class attribute, if defined outside the fragment, > become just simple labels." > > so this means searching elements inside the fragment is not supported. > > Is there any work around available for this? > > I apologize if something along these lines has been discussed earlier > and would appreciate if someone guides me in this. > > Thanks, > amit > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "jQuery Development" group. To post to this group, send email to jquery-dev@googlegroups.com To unsubscribe from this group, send email to jquery-dev+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/jquery-dev?hl=en -~----------~----~----~----~------~----~------~--~---