Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using JQuery on JavaScript variables

Tags:

jquery

$.getJSON('ajax_popup.php', function(data)
{
    var popupDiv = decodeURIComponent(data.data);
    $('body').append( popupDiv );
});

This piece of code returns <div> element that has other XHTML elements inside. It is returned in JSON format with JQuery. The returned XHTML from data.data is stored into JavaScript variable by first decoding UTF-8 encoded data. The DIV element is a custom popup window. The above code works, BUT I want to make it draggable using JQuery UI's .draggable() method, but I don't know where to use it and how to make it work in this case.

I've tried:

popupDiv.draggable();

But it didn't work.

And:

$('body').append( popupDiv ).draggable();

But it made the body element draggable :D

like image 707
TheMagician Avatar asked Feb 28 '23 03:02

TheMagician


2 Answers

Try this:

$(popupDiv).draggable();
like image 147
NawaMan Avatar answered Mar 12 '23 20:03

NawaMan


The jQuery function can turn text into jQuery extended DOM elements. So:

$.getJSON( 'ajax_popup.php', function( data ) {
  var popupDiv = decodeURIComponent( data.data );
  $('body').append( $(popupDiv).draggable() );
} );
like image 39
rfunduk Avatar answered Mar 12 '23 21:03

rfunduk