小编F.P*_*F.P的帖子

li上的类的字体颜色在Chrome中无焦点之前不会呈现

我在jQuery/CSS中有一个非常奇怪的问题,我不确定这里出了什么问题.考虑这个最小的例子:

#list li {
    color:#3c6174;
    cursor:pointer;
}

#list li.active {
    color:red;
}

<ul id="list">
    <li class="active"></li>
    <li></li>
    <li></li>
</ul>

$buttons = $("#list li");
$buttons.click(function() {
    $buttons.removeClass("active");
    $(this).addClass("active");
});
Run Code Online (Sandbox Code Playgroud)

在Chrome中查看代码(在此处小提琴),然后单击其中一个列表按钮.什么都没发生.但是,如果你不对焦窗口,它会突然激活类并呈现红色.

它似乎在Firefox中工作得很好:一旦单击列表项,它的颜色将切换为红色,其他颜色再次变为蓝色.

查看DOM显示该类被删除并添加到被单击的元素上,没有任何延迟,所以我不明白为什么它不会立即呈现.

这里发生了什么?

PS:33.0.1750.146 m在Windows Prof x64上使用

html javascript css jquery google-chrome

7
推荐指数
1
解决办法
71
查看次数

switch使用未定义的内部类在tomcat中导致NoClassDefFoundError

我有一个非常简单的枚举

my.package.data.util

public enum Mode
{
    SQLEXPORT, PREVIEW, PRINT
}
Run Code Online (Sandbox Code Playgroud)

应该使用哪个在另一个类中使用枚举

my.package.program.ComponentController

switch (_mode) { // line 278, _mode is of type my.package.data.util.Mode
case PREVIEW:
    // Do thing for preview
    break;
case SQLEXPORT:
    // Do thing for SQL
    break;
case PRINT:
    // Do thing for print
    break;
default:
    throw new IllegalArgumentException();
}
Run Code Online (Sandbox Code Playgroud)

这两个类在同一个项目中,并编译成一个jar文件.

然后,Web项目正在使用此库(放入WEB-INF/lib文件夹中).但是,当需要使用这个库,特别是那个开关时,NoClassDefFoundError会发生:

NoClassDefFoundError:my/package/program/ComponentController $ 1

at my.package.program.ComponentController.doCall(ComponentController.java:278)

这是我在几个层面上无法理解的:

  1. 为什么Java尝试加载内部类(如可见$1).没有内在的课程ComponentController,也从来没有.
  2. 为什么Java认为交换机使用这个内部类作为其参数
  3. my.package.data.util.Mode类消失

这里发生了什么?


更多信息不在原始问题中

  • ComponentController …

java tomcat

7
推荐指数
1
解决办法
1739
查看次数

WSL2 (docker) 端口在主机上未开放

当我在 WSL2 中通过 docker 运行映像时,端口未在主机上发布。为什么是这样?我该怎么做才能使这项工作成功?

截屏

docker windows-subsystem-for-linux

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

替换VBA中的变量字符串

我需要在字符串中替换somethin,但替换的内容可能会有所不同.有可能

XY - test
XXxY-test
XXyyXx-TEST
yXyy     -Test
Run Code Online (Sandbox Code Playgroud)

几乎任何其他空白组合和上述情况.

我需要更换"-test"部分并单独留下"XXX".所以,当使用简单的替换

Replace("XXX  -test", "- test", "")
Run Code Online (Sandbox Code Playgroud)

显然,它不会起作用.所以我需要一个更复杂的Replace版本来处理这个任务.有什么我可以使用或我必须自己写吗?

string excel vba replace excel-vba

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

如何改进应用程序以避免堆空间问题

我有一个应用程序,它与许多在方法中创建的自定义对象一起工作,并且从不需要在它们之外.整个结构(在我看来)非常好的面向对象,并使用服务,实用程序和DI模型.

现在,当我运行我的第一个"大型"测试时,我很快遇到了OutOfMemoryExceptions.现在,我不只是想增加堆空间并完成它,因为我可以想象这不会解决问题,而是延迟它直到我的应用程序增长更多并遇到同样的问题.

我正在寻找一些简单易用的解决方案,技巧和片段,它们可以帮助应用程序处理垃圾收集和堆空间,尤其是涉及许多使用对象创建操作的循环时.

像"不要在循环中创建对象,在循环之前创建它们并在其中覆盖它"之类的东西.

java memory heap object

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

使用Word interop设置自定义文档属性

我想在我的C#代码中设置我正在创建的word文档的一些自定义文档属性.为此,我按照这篇MSDN文章提出了这段代码:

using Word = Microsoft.Office.Interop.Word; // Version 12.0.0.0
word = new Word.Application();
word.Visible = false;
Word._Document doc = word.Documents.Add(ref missing, ref missing, ref missing, ref missing);
logger.Info("Setting document properties");
Core.DocumentProperties properties = (Core.DocumentProperties)doc.BuiltInDocumentProperties;
properties["Codice_documento"].Value = args[3];
properties["Versione_documento"].Value = args[4];
Run Code Online (Sandbox Code Playgroud)

不幸的是,每当它到达代码时我都会收到此错误:

HRESULT:0x80004002(E_NOINTERFACE)

这是为什么?我完全按照我的MSDN描述使用接口,为什么它不起作用?

我正在使用Interop for office 2010和.net 3.5

interop vsto ms-word office-addins office-2010

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

如何推出用VB6编写的新版ActiveX控件

我必须维护用VB6编写的旧的活动x控件.

当我们为它开发一些新功能时,我现在需要向用户推出这个新版本.如何以最不突兀的方式做到这一点?

控件是这样嵌入的

<OBJECT classid="clsid:..." CODEBASE="activex/plugin/myOCX.CAB#version=1,0,0,42">
    <PARAM name="RunOnLoad" value="true"></PARAM>
    [...]
</OBJECT>
Run Code Online (Sandbox Code Playgroud)

不,当我将其更改#version为实际的(1,0,0,80)时,它不会改变任何东西.IE仍然加载旧版本(我可以通过提醒OCX版本的函数检查).

只有当我从我的机器上删除OCX然后加载页面时,它才会打印出新版本.

显然,用户不能也不应该这样做.所以问题仍然存在:一旦将用户部署到服务器上,我怎样才能有效地强制用户使用新版本?

windows vb6 internet-explorer activex

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

如何在执行速度方面优化此查询

这个查询应该给我一个最接近给定的元素:x,:y在笛卡尔坐标系中.

SELECT `type`
FROM `mapgen_centers`
ORDER BY SQRT(POW((:x - `x`), 2) + POW((:y - `y`), 2))
LIMIT 1
Run Code Online (Sandbox Code Playgroud)

它目前平均需要0.002s,这是可以的,但我觉得这可能会更好,特别是因为我目前非常,经常和频繁地发射它,所以脚本的整个执行堆积到几分钟.

可以(以及如果,如何)通过标准MySQL安装上提供的任何方法(过程,函数,索引,配置......)进行优化

mysql

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

Excel自动化:PDF导出导致"打印机设置"弹出窗口

我正在开发一个自动Excel到PDF生成的应用程序.每隔一段时间(并且没有任何明显的原因,程序运行时会出现以下弹出窗口:

32位应用程序的打印驱动程序主机停止工作.

32位应用程序的打印驱动程序主机停止工作

不久之后,这一个:

打印机设置

打印机设置弹出窗口

我需要做什么,如果有的话?我的申请并不复杂.错误总是(100%)发生在这一行:

_application.ActiveWorkbook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF,
    pdfTemplatePath, Excel.XlFixedFormatQuality.xlQualityStandard, 
    _, _, 1, pdfPrintAreaEnd);
Run Code Online (Sandbox Code Playgroud)

有问题的变量是:

Excel := Microsoft.Office.Intertop.Excel
_application := Excel.Application
_ := System.Type.Missing
pdfPrintAreaEnd := int 6
Run Code Online (Sandbox Code Playgroud)

异常消息如下:

System.Runtime.InteropServices.COMException (0x800A03EC):
    Exception from HRESULT: 0x800A03EC
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?而且,更重要的是:为什么它偶尔会发生在每一个人身上?

pdf excel office-2007 office-interop

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

与IIS相比,为什么HashTable在Visual Studio调试中的顺序不同

我在HashTables的应用程序中发生了一件非常奇怪的事情.

首先:是的,我知道HashTables不应该以插入的方式或任何其他方式(但是键的哈希值)进行排序.这不回答我的问题.我不需要它订购,我只是想知道为什么它在两个看似相同的系统之间有所不同.

所以,在这里.左侧是IIS排序,右侧是Visual Studio.

IIS与VS在HashTable中的排序

它为什么不同?考虑到.NET应该(?)使用相同的算法来存储和检索来自HashTable的数据,那么双方的排序应该是相同的,不是吗?

如果,正如我所知,HashTable的密钥是经过哈希处理的,那么这两个系统上的哈希应该是相同的,导致哈希(密钥)的顺序相同,因此哈希表中的数据顺序相同.

我哪里错了?IIS和VS之间的HashTable实现有什么区别?

评论中的一些额外说明:

  • 项目针对.NET 4.0
  • IIS将.NET 4.0用于应用程序池
  • 我实际上将已编译的二进制文件从Visual Studios bin文件夹复制到IIS文件夹,因此它们完全相同
  • 我的假设是IIS使用与Visual Studio相同的.NET实现.如果没有:为什么?是什么让IIS上的散列与Visual Studio中的散列有很大不同?

c# hashtable

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