小编ale*_*edy的帖子

Chrome和Safari中的jQuery UI对话框的滚动条问题

我正在使用jQuery UI对话框modal=true.在Chrome和Safari中,这会通过滚动条和光标键禁用滚动(使用鼠标滚轮滚动和向上/向下翻页仍然有效).

如果对话框太高而无法放在一个页面上,则会出现问题 - 笔记本电脑上的用户会感到沮丧.

有人在三个月前在jQuery bug跟踪器上提出了这个问题 - http://dev.jqueryui.com/ticket/4671 - 它看起来不像修复它是一个优先事项.:)

任何人都这样:

  1. 对此有所解决?
  2. 有一个建议的解决方案,将提供一个体面的可用性体验?

我正在尝试使用鼠标悬停/滚动到表单的位,但它不是一个很好的解决方案:(

编辑:道具给Rowan Beentje(谁没有在SO afaict)寻找解决方案.jQuery UI通过捕获mouseup/mousedown事件来阻止滚动.所以下面的代码似乎解决了它:

$("dialogId").dialog({
    open: function(event, ui) {
        window.setTimeout(function() {
            jQuery(document).unbind('mousedown.dialog-overlay')
                            .unbind('mouseup.dialog-overlay');
        }, 100);
    },
    modal: true
});
Run Code Online (Sandbox Code Playgroud)

使用风险自负,我不知道其他非模态行为解除了这个东西可能允许的范围.

safari jquery google-chrome jquery-ui

42
推荐指数
2
解决办法
3万
查看次数

'2K3构建服务器上的单元测试中不允许'应用程序相对虚拟路径'〜/',而不是XP/Vista dev机器

我正在嘲笑HttpRequestBase,所以我可以在测试代码中创建一个HtmlHelper,并围绕HtmlHelper扩展方法编写测试.我这样做是设置代码的一部分:

httpRequestBase.Stub(h => h.ApplicationPath).Return("~/");
httpRequestBase.Stub(h => h.AppRelativeCurrentExecutionFilePath).Return(appPath);
httpRequestBase.Stub(h => h.PathInfo).Return("");
Run Code Online (Sandbox Code Playgroud)

在两个开发机器上(一个运行XP,一个Vista 64位)工作正常.但是,在Windows Server 2003构建计算机上,当我在HtmlHelper上调用RouteLink()时测试失败,如下所示:

System.ArgumentException:此处不允许应用程序相对虚拟路径'〜/'.在System.Web.VirtualPath.Create(String virtualPath,VirtualPathOptions选项)

在这两种情况下,我都使用NUnit 2.4.8和NUnit GUI作为测试运行器.除了OS之外,其他所有内容都是相同的:相同版本的RhinoMocks(3.5),相同版本的ASP.NET MVC(RTM).我尝试从开发机器上复制二进制文件,而不是使用构建机器上的二进制文件,这没什么区别.

当我将设置代码中的第一行更改为:

httpRequestBase.Stub(h => h.ApplicationPath).Return("/");
Run Code Online (Sandbox Code Playgroud)

测试通过所有机器.

知道为什么吗?

asp.net asp.net-mvc

8
推荐指数
2
解决办法
2万
查看次数

x64 .NET编译/ Process Explorer奇怪

如果我要说的任何内容毫无意义或忽视了一些显而易见的东西,那么道歉 - 我对CLR内部的了解是不稳定的.

如果我理解正确,那么如果我只是在VS2K5中为'AnyCPU'构建一个解决方案(或者使用这些设置指向那个.sln文件的MSBuild),那么二进制文件只能编译到MSIL.然后,如果在32位平台上执行,它们会被JIT打成32位,如果在x64上执行,它们会被64位代码...对吧?

这些DLL用于Web应用程序并托管在W3WP.exe进程中.Process Explorer告诉我W3WP是一个64位进程.

但是当我使用Process Explorer在DLL视图中检查其中一个DLL的属性时,它会显示:'Image:32-bit'.是什么赋予了?

如果我对有问题的DLL运行corflags它会告诉我:ILONLY 1,32BIT 0但是PE PE32.我的理解是,这意味着它只是编译到IL,不是它不限于32位或64位,但我不完全清楚.PE32标志是否与它上面显示的32位有关?

.net clr 64-bit corflags process-explorer

5
推荐指数
1
解决办法
1163
查看次数

如何最好地处理Visual Studio中的巨大源代码文件

我正在开发一个充分利用代码生成的项目.它生成的一些文件包含> 25万​​行代码.VS(2K5)不能很好地应对,但R#(4.01)每两分钟左右就会抛出一个内存不足的异常.

将它们拆分成部分类/单独的文件在短期内不是一种选择,尽管可能会更晚.

有没有聪明的IDE技巧来处理这个?

编辑:所以人们立即(非常明智地)说"没有那么大的文件",并提出了将其分解为较小文件的方法.

这很好,但是我正在进行一项时间限制的任务,看看并决定优化什么.我的问题非常具体'如何在没有痛苦的情况下在IDE中查看疯狂的大文件',而不是"如何重构项目".出于问题的目的,请假设该文件是只读的.:)

resharper code-generation visual-studio-2005

4
推荐指数
2
解决办法
3300
查看次数