2010-01-10 8 views
2

J'ai des difficultés à créer un cookie (en utilisant le plugin jquery cookie) qui se souviendra de la position de toutes les boîtes de dialogue sur la page (class .dialog). Les boîtes de dialogue sont déplaçables.Cookies et Jquery: boîtes de dialogue

Voici ce que j'ai essayé:

<script> 
    jQuery(document).ready(function() { 

    // cookie period 
    var days = 1; 

    // load positions form cookies 

    $(".dialog").each(function(index){ 

    $(this).css("left", 

    $.cookie("im_" + this.id + "_left")); 

    $(this).css("top", 

    $.cookie("im_" + this.id + "_top")); 

    }); 

    // bind event 
    $('.dialog').bind('dragstop', savePos); 

    // save positions into cookies 
    function savePos(event, ui){ 

    $.cookie("im_" + this.id + "_left", 

    $(this).css("left"), { path: '/', expires: days }); 

    $.cookie("im_" + this.id + "_top", 

    $(this).css("top"), { path: '/', expires: days }); 
    } 
    }); 

    alert($.cookie('')); 
     </script> 


      <script type="text/javascript"> 
     $.ui.dialog.defaults.stackfix = true; 
     $(function() { 
       $('#dialog').dialog({ 
         autoOpen: true, 
       }); 

       $('#dialog_open').click(function() { 
         $('#dialog').dialog('open'); 
         return false; 
       }); 
     }); 
     </script> 

div id = "dialogue" title = "dialogue de base"> texte ici. /div

Certains de vos conseils de gourou serait très apprécié

Répondre

0

Essayez d'utiliser .Position(). Gauche et .Position(). Droite au lieu de Css ("gauche") et Css («droit "), a lire.

Cela peut être le problème. Si cela ne résout pas le problème, vérifiez si les cookies sont bien configurés dans le navigateur et que vous pouvez les lire.