2010-01-10 38 views
2

我在创建一个cookie(使用jquery cookie插件)时会记住页面上所有对话框的位置(class .dialog),但有困难。对话框是可拖动的。Cookies和jquery:对话框

这是我曾尝试:

<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 = “对话框中的” 标题= “基本对话”> 文本放在这里。 /DIV

你的一些大师的建议,将不胜感激

回答

0

尝试使用.POSITION()。左边和.POSITION()。右代替的.css( “左”)和.css(“右“),供阅读。

这可能是问题所在。如果这样不能解决问题,请检查cookie是否实际在浏览器中设置,并且您可以阅读它们。