You're right it's works.

Thank you.

Le jeudi 13 février 2014 14:02:18 UTC-5, Daniel Freedman a écrit :
>
> In Polymer elements, 'this' *is* the element at all times.
>
> If you want to, you could use this.querySelector, or 
> this.shadowRoot.querySelector for elements in the shadowroot.
> There is no need for another selector library because DOM has one built in.
>
>
> On Thu, Feb 13, 2014 at 10:58 AM, David Avenante 
> <[email protected]<javascript:>
> > wrote:
>
>> Yes you're right
>>
>> Using Chrome Canary w/ experimental-web-platform-features in console when 
>> I use the jquery selector $('#username') I obtain an empty array.
>> But with chrome classic and Firefox I obtain a none empty array. So 
>> potentially a risk of side effect.
>>
>> The question is more general in fact and raise a real use case.
>> In real life, when I write for example a jquery plugin or a component 
>> with juste html / js. I avoid the usage of id and use class or specific 
>> attribute (like data-role in jquery mobile) to select element in the 
>> context of my sub dom.
>> I think in a case of a more complex component who have more usage of DOM 
>> manipulation you need more an helper on the DOM and not on id,  maybe a 
>> minimaliste functional DOM selector like zepto or other (just a DOM 
>> selector)
>>
>> I like the approach of backbonejs who expose a $el who is the 
>> representation of a jquery selector on the element.
>> So in polymerjs a this.$ or this.$el to reference the root element 
>> processed with a DOM selector to write some expression like 
>> this.$.find('option:selected') ...
>>
>> David
>>
>>
>>
>>
>>
>>
>>
>> Le jeudi 13 février 2014 13:07:16 UTC-5, Scott Miles a écrit :
>>>
>>> ShadowDOM provides a scope that restores IDs to usefulness.
>>>
>>> You don't in fact get this:
>>>
>>> <li>
>>> <gravatar-image username="xxxx" size="80" hash="">
>>>  <a id="username" href="http://www.gravatar.com/xxxx";>
>>>  <img id="username_image" src="http://www.gravatar.com/
>>> avatar/xxxx.jpg?s=80">
>>>  </a> 
>>> </gravatar-image>
>>> </li>
>>>
>>> You do get this:
>>>
>>> <li>
>>>  <gravatar-image username="xxxx" size="80" hash="">
>>> #shadow-root
>>>  </gravatar-image>
>>> </li>
>>>
>>> The IDs are inside the shadow root, so there is no duplication at the 
>>> document level.
>>>
>>> Do some tests using Chrome Canary w/ experimental-web-platform-features 
>>> enabled if you want to use the DOM inspector to study the features of 
>>> ShadowDOM.
>>>
>>> On browsers that need it, the ShadowDOM Polyfill provides the same 
>>> scoped environment to your application, but the DOM inspector shows only 
>>> the raw tree, which is misleading.
>>>
>>> Scott
>>>
>>>
>>>
>>>
>>> On Thu, Feb 13, 2014 at 7:54 AM, David Avenante <[email protected]>wrote:
>>>
>>>> Hi,
>>>>
>>>> I look more and more on the WebComponent approach and so on Polymerjs.
>>>>
>>>> I'm surprising of the add "Automatic node finding" on the lib.
>>>> What is the interest of this practice cause in the HTML specification 
>>>> "The ID must be unique in a document"  (https://developer.mozilla.
>>>> org/en-US/docs/Web/API/element.id)
>>>>
>>>> I see already the result in this case. 
>>>>
>>>> https://github.com/djalmaaraujo/gravatar-image/
>>>> blob/gh-pages/src/gravatar.html
>>>>
>>>> If you look at the template :
>>>>
>>>>    <a id="username">
>>>>       <img id="username_image" />
>>>>
>>>>
>>>>    </a>
>>>>
>>>> So the creator of the component use a facility of polymer who is a bad 
>>>> practice at the document level.
>>>> In this case if I have a collection of gravatar images my dom looks like :
>>>>
>>>> <ul>
>>>>
>>>>
>>>>
>>>> <li>
>>>> <gravatar-image username="xxxx" size="80" hash="">
>>>>         <a id="username" href="http://www.gravatar.com/xxxx";>
>>>>
>>>>
>>>>
>>>>             <img id="username_image" 
>>>> src="http://www.gravatar.com/avatar/xxxx.jpg?s=80";>
>>>>         </a>       
>>>>
>>>>
>>>>
>>>>     </gravatar-image>
>>>> </li>
>>>>
>>>> <li>
>>>> <gravatar-image username="yyyy" size="80" hash="">
>>>>         <a id="username" href="http://www.gravatar.com/yyyy";>
>>>>
>>>>
>>>>
>>>>             <img id="username_image" 
>>>> src="http://www.gravatar.com/avatar/yyyy.jpg?s=80";>
>>>>         </a>       
>>>>
>>>>
>>>>
>>>>     </gravatar-image>
>>>> </li>
>>>>
>>>>
>>>> </ul>
>>>>
>>>> So many same id on my document.
>>>>
>>>> Maybe the Automatic node finding is not a good solution and add an 
>>>> another question in an another thread ;)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>  Follow Polymer on Google+: plus.google.com/107187849809354688692
>>>> --- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Polymer" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>>
>>>> To view this discussion on the web visit https://groups.google.com/d/
>>>> msgid/polymer-dev/830e5bce-4d95-4635-a3d7-c713d665b380%
>>>> 40googlegroups.com.
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>
>>>  Follow Polymer on Google+: plus.google.com/107187849809354688692
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Polymer" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/polymer-dev/0406d2b3-d758-4ad5-b555-d7390d0ef4f3%40googlegroups.com
>> .
>>
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>
>

Follow Polymer on Google+: plus.google.com/107187849809354688692
--- 
You received this message because you are subscribed to the Google Groups 
"Polymer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/polymer-dev/7ce1fb25-d4ef-4541-a189-b9d9ab2bd10a%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to