Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #23252
| From | "se" <se@no-one.here> |
|---|---|
| Newsgroups | comp.lang.javascript |
| Subject | Re: Get inner text of HMTL element |
| Date | 2014-02-23 21:01 +0100 |
| Organization | A noiseless patient Spider |
| Message-ID | <ledk3p$sk3$1@dont-email.me> (permalink) |
| References | <leambb$nfo$1@dont-email.me> <lebfaf$8r8$1@speranza.aioe.org> <lebtqq$3st$1@dont-email.me> <ledela$afm$1@speranza.aioe.org> |
"Joao Rodrigues" <groups_jr-1@yahoo.com.br> skrev i meddelelsen
news:ledela$afm$1@speranza.aioe.org...
> On 23-02-2014 01:35, se wrote:
>> "Joao Rodrigues" <groups_jr-1@yahoo.com.br> skrev i meddelelsen
>> news:lebfaf$8r8$1@speranza.aioe.org...
>>
>>> A good approach is using feature-tests at load-time, when you test for
>>> either textContent or innerText only once. Then, you will use one of
>>> them in the rest of your code / library. E.g.
>>>
>>> (function (global) {
>>> // feature-tests at load-time.
>>> var parseEl = document.createElement('div');
>>> var get_inner_text;
>>> if (typeof parseEl.textContent != 'undefined') {
>>> // DOM Level 3 - IE9+, FF, Safari, etc.
>>> get_inner_text = function (el) {
>>> return (el.textContent);
>>> };
>>> } else if (typeof parseEl.innerText != 'undefined') {
>>> get_inner_text = function (el) {
>>> return (el.innerText);
>>> };
>>> }
>>> global.get_inner_text = get_inner_text;
>>> }(this));
>>>
>>> Keep in mind the differences between textContent and innerText,
>>> though. See https://developer.mozilla.org/En/DOM/Node.textContent
>>
>> Why this:
>> if (typeof parseEl.textContent != 'undefined')
>>
>> Why not just:
>> if (typeof parseEl.textContent)
>
> No, because the typeof operator always returns an non-empty string. So the
> if statement will evaluate the (typeof parseEl.textContent) expression as
> true. You seem to be confusing "undefined" with undefined.
>
> If ("undefined") { } // is true
> If (undefined) { } // is false
>
> See <http://ecma-international.org/ecma-262/5.1/#sec-11.4.3>
> and
> <http://ecma-international.org/ecma-262/5.1/#sec-12.5>
>
>
>> Testing for returned value of either null or undefined, its
>> anough and better just doing: if (ele)
>> Using 'undefined' in testing often leads to an erroneous compare
>> statment.
>> if using != it would be better doing it like this: if (ele!=null). As
>> null is a
>> reliable use whether returned value is undefined or null.
>> if (ele!=null) is the same as if (ele).
>> So in cases where returned value is either undefined or null,
>> just do: if (ele).
>
> It is so because undefined == null and null == undefined are true and also
> because the undefined value can be overwritten in ES 3. This is whay it is
> safe to test against null.
Yes, that was the base-knowledge behind my information.
Agreed, program-code won't scrash testing as: if (typeof parseEl.textContent
!= 'undefined')
as typeOf always returns a string.
Yet, it's recommended not - not here at least:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/undefined
Read this midtways down on the page:
However, this kind of technique should be avoided. JavaScript is a
statically scoped language, so knowing if a variable is defined can be read
by seeing whether it is defined in an enclosing context.
Did I confusing this - Maybe?.
>
> --
> Joao Rodrigues
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-22 18:21 +0100
Re: Get inner text of HMTL element Martin Honnen <mahotrash@yahoo.de> - 2014-02-22 19:31 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-22 20:51 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-22 21:11 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-22 21:37 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-22 22:05 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-22 23:38 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-23 10:43 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-23 14:50 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-23 15:48 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-24 21:01 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-24 22:34 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-27 21:41 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-27 22:32 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-28 13:44 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-28 16:54 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-03-04 20:51 +0100
Re: Get inner text of HMTL element ompalompasales2@gmail.com - 2014-03-04 12:59 -0800
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-22 20:59 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-22 22:23 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-22 23:32 +0100
Re: Get inner text of HMTL element Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2014-02-22 21:27 -0300
Re: Get inner text of HMTL element "se" <se@no-one.here> - 2014-02-23 05:35 +0100
Re: Get inner text of HMTL element Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2014-02-23 15:29 -0300
Re: Get inner text of HMTL element "se" <se@no-one.here> - 2014-02-23 21:01 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-23 20:02 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-23 21:55 +0100
Re: Get inner text of HMTL element Cezary Tomczyk <cezary.tomczyk@gmail.com> - 2014-02-24 08:37 +0100
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-24 12:30 +0100
Re: Get inner text of HMTL element Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2014-02-24 15:09 -0300
Re: Get inner text of HMTL element Christoph Michael Becker <cmbecker69@arcor.de> - 2014-02-24 19:43 +0100
Re: Get inner text of HMTL element Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2014-02-24 18:12 -0300
Re: Get inner text of HMTL element Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2014-02-24 22:51 +0100
Re: Get inner text of HMTL element Dr J R Stockton <reply1400@merlyn.demon.co.uk.invalid> - 2014-02-25 19:49 +0000
Re: Get inner text of HMTL element Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2014-02-26 05:20 -0300
Re: Get inner text of HMTL element "se" <se@no-one.here> - 2014-02-26 17:10 +0100
OT - Re: Get inner text of HMTL element Joao Rodrigues <groups_jr-1@yahoo.com.br> - 2014-02-26 15:48 -0300
Re: OT - Re: Get inner text of HMTL element "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2014-02-26 22:43 +0100
Re: OT - Re: Get inner text of HMTL element Dr J R Stockton <reply1400@merlyn.demon.co.uk.invalid> - 2014-02-27 15:00 +0000
Re: OT - Re: Get inner text of HMTL element "Evertjan." <exxjxw.hannivoort@inter.nl.net> - 2014-02-28 10:50 +0100
Re: OT - Re: Get inner text of HMTL element "se" <se@no-one.here> - 2014-02-27 10:57 +0100
Re: Get inner text of HMTL element Dr J R Stockton <reply1400@merlyn.demon.co.uk.invalid> - 2014-02-27 15:46 +0000
csiph-web