Search code examples
jqueryjquery-mobileclone

JQuery Mobile clone page


I having trouble cloning a page of jqm. Here is an example:

http://jsfiddle.net/QZKBw/

as you can see, the cloning and modifing the page is not the problem:

    var newPage = $('#page-1').clone();
    newPage.prop('id', 'page-2');
    newPage.find('#header-1')
        .prop('id', 'header-2')
        .find('h1')
        .html('Page 2');

The switch back to page 1 will end up with two active pages. Is it a problem with jqm?


Solution

  • This should do it: http://jsfiddle.net/Gajotres/Nc98p/

    $(function () {
        $('#clone-page').click(function () {
            if($('#page-2').length == 0){
                var newPage = $('#page-1').clone();
                newPage.prop('id', 'page-2');
                newPage.find('#header-1')
                    .prop('id', 'header-2')
                    .find('h1')
                    .html('Page 2');
                newPage.find('#content-1')
                    .prop('id', '#content-2')
                    .html('<a href="#page-1" data-role="button"> to Page 1</a>');
                newPage.appendTo($.mobile.pageContainer);        
            }        
            $.mobile.changePage('#page-2');
        });
    });