NodeType Named Constant 1 ELEMENT_NODE 2 ATTRIBUTE_NODE 3 TEXT_NODE 4 CDATA_SECTION_NODE 5 ENTITY_REFERENCE_NODE 6 ENTITY_NODE 7 PROCESSING_INSTRUCTION_NODE 8 COMMENT_NODE 9 DOCUMENT_NODE 10 DOCUMENT_TYPE_NODE 11 DOCUMENT_FRAGMENT_NODE 12 NOTATION_NODE
from: http://www.w3schools.com/Dom/dom_nodetype.asp I had to check for nodeType == 3 since the text nodes do not have an innerHtml property. Also, after some reading, I think 'node.nodeValue' would be more "proper" over 'node.data' I'd like to see how you get it to work better with jQuery, or rather, "native jQuery". I'll try it myself, but I'd like to see how others would implement it. On Sep 30, 2:20 pm, Pedram <[EMAIL PROTECTED]> wrote: > Wow amazing... it worked let me ask you question I think I can do it > with jQuery .. > do you know what does node.nodeType mean in javascript > nodeType=1 what does that mean for each value ? > thanks Pedram > > On Sep 30, 8:29 pm, equallyunequal <[EMAIL PROTECTED]> wrote: > > > I'm not sure how to do it in a "jQuery" way. But here's what I came up > > with: > > > $( function(){ > > $("p").each( function() { > > var allButSpan = this.allButSpan = new Array(); > > $.each(this.childNodes, function(i, node) { > > if (node.nodeName.toLowerCase() != "span") > > { allButSpan[allButSpan.length] = node; } > > }); > > }); > > > $("p").each( function(){ > > var innerHtml = ""; > > $.each(this.allButSpan, function(i, node) { innerHtml += > > (node.nodeType == 3) ? node.data : $(node).html(); } ); > > console.log(innerHtml); > > }); > > > }); > > > Example here:http://joeflateau.net/playground/testingpexcspan.html > > > You need Firebug (or anything that supports console.log) to use the > > example! > > > On Sep 30, 12:20 pm, Pedram <[EMAIL PROTECTED]> wrote: > > > > It didn't work Cause the Text isn't concern as a Children and it is in > > > No Tag area .... so when we call $(this).children it returns only the > > > Span and if we do $(this).children(":not(span)") it returns NULL ... > > > so Equally..... what should we do > > > > On Sep 30, 5:34 pm, equallyunequal <[EMAIL PROTECTED]> wrote: > > > > > Ok, how about something to the effect of: > > > > > $("p").each(function() { $ > > > > (this).children(":not(span)").css({color:"red"}); }); > > > > > On Sep 30, 8:12 am, [EMAIL PROTECTED] wrote: > > > > > > If I do this with CLone then all my prossesing is with the clone but I > > > > > need to have a selector in the Original one not in the Clone so > > > > > changing and modifying the clone is not necessary ,the only way is get > > > > > a Clone of THe Span Then Remove the Span and then get the content of > > > > > the P do some changes on it , after that add the Span again And I > > > > > think this is not the right way to Deal with this ... > > > > > I'm still working on thiws and waiting for the best way to it > > > > > Thanks Pedram > > > > > > On Sep 30, 7:36 am, equallyunequal <[EMAIL PROTECTED]> wrote: > > > > > > > $("p:not(span)") would select all paragraphs that are not spans... > > > > > > which would be all paragraphs even if they have a child that is a > > > > > > span. > > > > > > $("p :not(span)") or $("p *:not(span)") would select all paragraphs > > > > > > without child spans... which would be none of the paragraphs. > > > > > > > He needs the contents of all paragraphs minus the content of a span. > > > > > > The only way (I can think of) to non-destructively get the contents > > > > > > of > > > > > > an element minus some of its children is to clone it first, then > > > > > > remove the children. > > > > > > > On Sep 29, 3:33 pm, dasacc22 <[EMAIL PROTECTED]> wrote: > > > > > > > > um cant you just do something like $("p:not(span)") ?? > > > > > > > > On Sep 28, 3:48 pm, equallyunequal <[EMAIL PROTECTED]> wrote: > > > > > > > > > This should work: > > > > > > > > > var clone = $("p").clone(); > > > > > > > > clone.find("span").remove(); > > > > > > > > > clone.each( function() { console.log(this) } ); > > > > > > > > > On Sep 28, 2:13 pm, [EMAIL PROTECTED] wrote: > > > > > > > > > > Hi Guys, > > > > > > > > > > this is the Code which I am working on > > > > > > > > > > <p> > > > > > > > > > Data which I need to select and it hasn't an attribute > > > > > > > > > <span> Data in a Span </span> > > > > > > > > > </p> > > > > > > > > > <p> > > > > > > > > > Data which I need to select and it hasn't an attribute > > > > > > > > > <span> Data in a Span </span> > > > > > > > > > </p> > > > > > > > > > <p> > > > > > > > > > Data which I need to select and it hasn't an attribute > > > > > > > > > <span> Data in a Span </span> > > > > > > > > > </p> > > > > > > > > > How could FIlter and Select the text Before the <span> > > > > > > > > > does someone has an Idea ?