小编dan*_*dan的帖子

jQuery循环似乎正在调整我的元素的高度

我有一个malsup的真棒jQuery循环运行的页面.我使用的是最新版本(2.99)和Safari 5.0.5.我以前没有遇到过以下问题,看起来有点奇怪.

问题

有时,当页面加载时,.slides元素只有654像素宽.我把它设置为css文件中的960px.但是,当我使用JavaScript来获取.slides元素的宽度时,它表示宽度为1271px.咦?这个问题偶尔会出现在Firefox(3.6.16)上,但没有Safari那么近.奇怪的是,我似乎无法在IE8中复制此错误.

我的代码都是W3C有效(除了3次调用border-radius).使用表单元素作为循环容器可能存在限制吗?Safari是否存在误操作?

JS:

$(document).ready(function(){
  var sw = $('.slides').width();
  $('.slides').cycle({
    fx: 'scrollHorz',
    nowrap: 0,
    fit: 1,
    timeout: 0,
    next: '.next',
    prev: '.prev',
    speed: 250
  });
  if (sw != 960){
    $('.slides').css('width','960px');//to set the width to 960, so it doesn't clip the form
    $('.slides').css('background-color','#ff00ff');//so i know when the problem is occuring
  }
});
Run Code Online (Sandbox Code Playgroud)

CSS:

#content{
    float:left;
    width:100%;
}

    .wrapme{
        width:960px;
        height:auto;
        margin:0 auto;
    }

    .slides{
        float:left;
        width:960px;
        height:auto;
        overflow:auto;
    }
Run Code Online (Sandbox Code Playgroud)

你可以(希望)在这里看到"bug" .我很想知道其他人是否没有这样做(可能需要多次推F5).

我很想解决这个烦人的小虫子.在循环之后设置容器宽度的解决方法已经调整它(错误的宽度,毫无疑问)只能解决问题的一半.移动到下一张幻灯片后,它会将宽度减半.下一张幻灯片,它再次将它减半.因此,在幻灯片3之后,它将所有内容调整到240px宽.

我想解决这个问题的方法是强制每个人都使用Firefox/IE(它将驻留在公司内部网上). …

css safari jquery jquery-cycle

6
推荐指数
2
解决办法
3928
查看次数

之前的奇怪

问题

$(window).bind("beforeunload", ...[snip]问,如果一个用户希望离开页面产生在一些浏览器的一些奇怪的结果.弹出对话框,询问您是希望留在页面上还是离开页面.如果您点击页面上的停留选项,Google Chrome(最新版本 - 13.0.782.215米)和WinIE7会弹出"后退"按钮中的最后一个历史记录页面.

为了说明这一点,当前会话历史记录包括访问以下页面:

  • 第3页
  • 第2页
  • 第1页

你决定离开第3页,beforeunload事件就会发生.您选择留在当前页面上.

您再次单击后退按钮,这次决定离开页面.你应该发现自己处于第2页,而不是你在第1页.你可以再次前进到第2页.

这个问题

当我们选择"保持当前页面"选项时,如何阻止浏览器从后退按钮中删除这些页面?可能吗?

问题的例子

使用谷歌浏览器,在新窗口中,前往http://stackoverflow.com并浏览几个问题,而无需返回.然后点击Ask Question按钮.开始在对话框中输入内容.在浏览器中按返回.选择留在页面上.再次按回浏览器,这次选择"离开页面"选项.你现在已经回到了历史的两页.如果您多次点击停留在页面上,您基本上可以返回多个页面.

为什么这很重要?!

我不想混淆我的用户.他们不是精通计算机的类型.

我的代码(不是相关的)

$(window).bind("beforeunload", function(){
    if (in_edit > 0){
        return "You are currently editing this job.\n\nAre you sure you wish to exit the page?";
    }
});
Run Code Online (Sandbox Code Playgroud)

javascript jquery google-chrome internet-explorer-7

6
推荐指数
1
解决办法
623
查看次数