Science that is a lot of source, better yet host the problem on a page
and send a link. A picture is worth a thousand words, how much is a
demo?
On Dec 21, 1:07 pm, Jason Boyd
<jayb...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
wrote:> I''m reposting this with a new subject and description as
I''ve
> identified the problem is with Sortable.create().
>
> I have a container, empty at document load time, to which I
> dynamically add DIV children, and each time then re-call
> Sortable.create() on the container. In IE, when this call is made, the
> styles on the *new* DIV just added suddenly disappear. However no
> error is thrown and the sortable succeeds as expected. Even weirder,
> as soon as I drag the just-added DIV, the styles re-render correctly
> and the bug is gone until the next time a DIV is added.
>
> This is with Scriptaculous 1.8.0, Prototype 1.6.0, IE 7.
>
> The added DIV itself contains 3 DIVs. Text styling is unaffected, but
> oddly, of the 3 child DIVs, one stays visible with its contained text,
> and the other 2 are invisible, even though one of those also contains
> text ("x" indicating this is a delete box).
>
> Hmmm... the two that become invisble both have a cursor style rule
> applied. One of them, the delete box, has an onclick handler attached
> *before* being attached to the document, and the other is the one used
> as the drag handle.
>
> Any thoughts are appreciated.
> -Jason Boyd
>
> Here''s all the code that''s relevant:
>
> /* javascript code */
>
> var playlistItem =
$(document.createElement(''div''));
> playlistItem.id = params.mediaID;
> playlistItem.addClassName(''playlistItem'');
>
> var dragger = $(document.createElement(''div''));
> dragger.addClassName(''playlistDragger'');
>
> var title = $(document.createElement(''div''));
> title.addClassName(''playlistItemTitle'');
> title.update(params.mediaTitle);
> title.onclick = function() {
> PopupPlayer.playItem(params);
> }
>
> var metaData = $(document.createElement(''div''));
> metaData.addClassName(''playlistItemMetaData'');
> metaData.update("Artist, YYY, ...");
>
> var deleteButton =
$(document.createElement(''div''));
> deleteButton.addClassName(''deleteButton'');
> deleteButton.update(''x'');
> deleteButton.onclick = function() {
> PopupPlayer.removeItem(playlistItem.id);
> }
>
> playlistItem.appendChild(dragger);
> playlistItem.appendChild(deleteButton);
> playlistItem.appendChild(title);
> playlistItem.appendChild(metaData);
> $(''playlist'').appendChild(playlistItem);
>
> // setting timeout to confirm styles only disappear when
> Sortable.create() is called
> setTimeout(function() {
> Sortable.create(''playlist'', {
> tag:''div'',
> only:''playlistItem'',
> handle:''playlistDragger''
> });
> }, 1000);
>
> /* and the styles, contained in the HEAD of the page */
>
> #playlist {
> float: right;
> width: 250px;
> height: 400px;
> border: 1px solid #dddddd;}
>
> .playlistItem {
> background-color: white;
> border: 1px solid #aaaaaa;
> margin: 5px;
> min-height: 30px;
> overflow: auto;
> font-variant: small-caps;}
>
> .playlistItemTitle {
> cursor: pointer;
> color: maroon;
> font-weight: bold;}
>
> .playlistItemMetaData {
> font-size: smaller;
> color: #aaaaaa;}
>
> .playlistDragger {
> cursor: move;
> height:50px;
> margin-right: 5px;
> width:15px;
> float:left;
> background-color:#eeeeee;}
>
> .deleteButton {
> cursor: pointer;
> font-size: xx-small;
> margin: 3px;
> float: right;
> width: 10;
> height: 10;
> color: #cccccc;
> border: 1px solid #cccccc;
> text-align: center;
> vertical-align: middle;
>
> }
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Spinoffs" group.
To post to this group, send email to
rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-spinoffs?hl=en
-~----------~----~----~----~------~----~------~--~---