我们已经将Stack Overflow和Stack Exchange使用的jQuery版本从1.7.1版本更新为今天(2016年9月27日,星期二)至1.12.4。 jQuery是一个基础结构库,我们已经在旧版本上运行了一段时间,因为它运行良好。但是,有一些改进和功能使我们不得不进行升级,特别是由于该网站的某些部分已经使用了不同的版本。

作为Q&A网站的用户,任何内容都不应明显更改,因为这是基础架构而不是功能更新。但是,通过这样的基础结构更新,总是有机会从裂缝中溜走。


如果您遇到了以前可以使用的功能,而今天却已损坏,请离开此线程的答案,请事先接受我的道歉。


请注意我们的浏览器支持列表。

请注意依赖过时jQuery的用户脚本可能需要更新功能(例如.live()-1.7、1.8、1.9和1.10类别中的任何内容,如果还可以在3.0中使用,以使将来的更新不太可能破坏脚本),则可能需要进行更新。没有DOM或其​​他结构上的更改,因此选择器应该仍然相同。

如果您好奇为什么我们要使用jQuery 1.12.4而不是3.1,则需要逐步解决升级并确保一切顺利。几乎每个1.x版本都进行了重大更改,jQuery建议将旧的1.x版本升级到最新的1.12.4,并先将jquery-migrate 1.x插件升级并修复不推荐使用的任何东西。我们现在处于这个阶段,希望确保一切仍然正常。

评论

与该更改相关的错误报告是否应在此处作为答案或作为新问题进行报告? (即,什么才更有可能被注意?)

-1不足的jQuery

@ShadowWizard更新生效后,尽管在任何情况下我都会观看有关Meta.SE和Meta.SO的新问题,但我将在此处向本文添加一个号召性用语,要求人们提交错误作为答案。 。

所以您只需要使用jQuery?

@ShadowWizard主要与perf和浏览器兼容,并且某些插件需要更新的版本。更好的CSS3支持,更好的源地图支持,更好的打字稿集成-没有一个“必须具备”的功能,但是4年的增量错误修复和改进。

很棒,谢谢,祝您好运,并修复了一些错误。 :)

如果SE的开发人员向后编写精巧的原始JS,为什么他们需要jQuery ..?

感谢您的单挑(以及更新)!看起来SOUP应该很好(手指交叉!),尽管在下一次更新中我将需要删除几个.andSelf()。

@AwalGarg但是现在它将是较新的jQuery,以便我们可以更轻松地添加更多内容:)我们甚至可以获得基本的算法。

只需使用$ .installJquery()就可以了!

一次只一步。

您的意思是不再“不赞成使用getAttributeNode()。请改用getAttribute()。”和“不建议使用getPreventDefault()。请改用defaultPrevented。”控制台警告?没有它们,jQuery就是不一样。 :(

@ShadowWizard我们还活着!

@TylerH尽量减少头痛。最大的突破版本是jQuery 1.9,该版本删除了所有旧内容。 2.x也可以使用,但是这将是一个更大的问题:“由于不推荐使用的功能或不再支持浏览器,东西被破坏了吗?”。一旦代码在1.9+上运行,迁移到3.x应该相对容易。我们处于3.0升级指南的第5步,因此我们将跳过所有2.x难题。

为SE开发人员一定要对许多精通技术的用户有帮助,以帮助您查找错误:D

#1 楼


现在状态已完成




当您在任何Stack Exchange网站上的任何页面上时,当您专注于搜索栏,然后使焦点散焦(单击在搜索栏下方),它会使搜索栏产生意外的动画效果,并同时附带徽章和个人资料图片div:





(一次,如果再次聚焦和散焦则不会发生。)

这在Stack Exchange的所有网站中都发生。

如果您在搜索栏中键入内容,不会发生。

如果需要复制它,则需要重新加载页面才能看到它的效果。

评论


同样,如果您写了一些东西,然后删除了您写的内容并失去了焦点,则占位符文本将不会按原样显示。

–影子向导正在接种疫苗
16-09-28在7:26

两者都已解决。那是一些真正的旧功能,包括。 IE8解决方法。

–Michael Stum♦
16-09-28在18:11

@Michael谢谢,我敢肯定,我之前注意到过占位符问题,但从未报告过。到目前为止,跳跃文本框是错误的赢家……;)

–影子向导正在接种疫苗
16-09-28在19:24



#2 楼


现在状态已完成



Enter键不再像以前那样提交评论。

在添加评论和编辑评论时均可观察。

确实适用于每个站点的meta,即bug适用于所有主要站点。 (包括MSE)

浏览器:Chrome最新稳定版(53),Windows10。

评论


推送了此修复程序,现在应该可以在所有站点和metas上再次使用

–Michael Stum♦
16-09-27在17:15

确实,它确实再次起作用!什么制表符补全?在评论中?它在这里工作。

–影子向导正在接种疫苗
16-09-27在17:15

是的,我忘记了我们关于制表符完成的规则​​(1.仅列出评论主题中的人,2。不列出自己或被评论的Q / A的所有者)

–Michael Stum♦
16-09-27在17:18

@Michael谢谢您,为什么还没有Enter的任何详细信息? :)

–影子向导正在接种疫苗
16-09-27在17:28

:visible选择器的规则已更改,或更确切地说,检查内容的顺序已更改。试图找出确切的区别以及它可能在其他地方发生,但是比较jQuery 1.7.1和jQuery 1.12.4之间的jQuery.expr.filters.hidden

–Michael Stum♦
16/09/27在17:34

@Michael感谢您提供详细信息!另外,感谢您修复了此其他错误,尽管可能仅是副作用! :-)

–影子向导正在接种疫苗
16-9-27在17:37



#3 楼


现在状态已完成。



将图片添加到帖子中时,如果粘贴URL,则“添加图片”按钮将永远不会激活。相反,我需要上传图片的副本(或手动输入Markdown以指向外部URL)



评论


修复已推送,现在应该可以再次使用。 (技术信息:似乎input [value!=“”]不再是有效的选择器)

–Michael Stum♦
16-09-27在18:02

@MichaelStum呵呵,一定要爱上所有那些微小但突破性的变化,这些变化可能在任何地方都没有记载...;)

–影子向导正在接种疫苗
16-09-28在7:22

@MichaelStum ShadowWizard API网站说它仍然有效...

–•uriousdannii
16-9-29在1:26

确实还是有效的

– David Hedlund
16-09-29在13:46

我在Windows 10中使用Chrome在tex.stackexchange上上传图像时遇到问题。单击“拖放或单击此处”时,单击与Windows资源管理器窗口打开之间存在几秒钟的延迟。 “添加图片”框也显示为灰色,无法使用。

–ahorn
16-9-29在14:13



#4 楼


现在状态已完成。




主持人似乎不能再因自定义原因拒绝标志了。当我们拒绝标记并选择“其他”选项时,没有文本框出现,我们无法输入原因:



我在Safari上观察到了这一点10.0在macOS Sierra(10.12)上运行,另一位主持人在Chrome中复制了它。他们说,强制运行

$("#dis_Other").toggle()


将带回文本框。

评论


解决方法:停止下降标志。 :)更严重的是,类似的功能是否可以回复有用的标志?

– gna
16-09-28在15:53

@gnat-文本框的确显示了接受自定义有用的标志,而不是显示自定义标志被拒绝。目前,我们只能以固定理由拒绝。

–布拉德·拉森(Brad Larson)
16-09-28在15:55

现在已解决。

–Michael Stum♦
16-9-28在16:38

@MichaelStum-感谢您的快速周转。感谢帮助。

–布拉德·拉森(Brad Larson)
16-09-28在17:06

我们可以将其更改为预期状态吗?愚蠢的自定义标志...对于每一个好的自定义标志,我都会发誓有10个可以像单词一样逐字使用非自定义标志...

– corsiKa
16-09-30在17:26

#5 楼


现在状态已完成




搜索徽章以跟踪数十个相同徽章中结果的进度

肖恩·维埃拉(Sean Vieira)在Meta堆栈溢出中报告的内容:


复制步骤


导航到您的个人资料
点击“选择要跟踪的标签徽章”齿轮图标
搜索标签名称

预期结果


将显示匹配标签的标签徽章(古铜色,银色和金色)。
仅显示与查询匹配的标签徽章(因此,对于完美匹配,将仅显示三个标签徽章

实际结果


铜牌显示了数十次(请参见屏幕截图)
根本没有显示银牌或金牌。




这似乎与.replaceWith().after().before()方法的更改有关。来自jQuery文档:


jQuer之前在y 1.9中,如果集合中的第一个节点未连接到文档,则.replaceWith()将尝试添加或更改当前jQuery集合中的节点,并且在这种情况下,返回新的jQuery集合而不是原始集合。该方法可能返回也可能未返回新结果,具体取决于其参数的数量或连接性!从jQuery 1.9开始,.after().before().replaceWith()始终返回原始的未修改集合。尝试在没有父节点的节点上使用这些方法没有任何效果-也就是说,集合和它所包含的节点都不会更改。


该错误可能在Q4312079q函数中replaceAvailableInDom文件。

评论


现在应该解决此问题。有趣的是,它没有发生在Meta中。

–Michael Stum♦
16-09-28在18:08

#6 楼

当我将鼠标悬停在“删除”链接(指向示例文章的链接)上时,弹出窗口不会告诉我我已经投票了。

Windows 10 / Firefox 49.0,Chrome 53.0.2785.116 m,Edge 38.14393.0.0。




在进行更改之前,请参见例如鼠标悬停工具提示删除计数错误



评论


不确定这是否与jQuery更改有关。我偶尔看到它并没有告诉我,我投票表决后将其删除。但是,这种情况并没有足够频繁地发生,以至于我无法检测到某种模式。

–ale
16-09-28在13:23

@AʟE。在这里也一样-在最近更改之前,它有时/很少被错过,但大部分都在那儿。更改后,总是100%丢失

– gna
16-9-28在14:02

我认为这是在您投票后立即发生的,但重新加载后就可以了。你能检查一下吗? (如果是这种情况,那仍然是一个错误,但与jQuery升级无关。)

–影子向导正在接种疫苗
16-09-28在19:27



重新加载对@ShadowWizard没有帮助

– gna
16-9-29在4:44

在进行del投票后几周,这对我来说没有显示。但是,我几乎完全可以肯定,该行为早于jquery的更改(上一次我寻找删除投票的内容是在几周前,但从那时起我就一直记得这个错误)。

–安德拉斯·迪克(Andras Deak)
16-10-1在23:24

@AndrasDeak我每天都使用此功能,对我而言,它直到最近才中断。以前虽然有点不稳定

– gna
16-10-2在0:22

MSO的类似投诉:为什么“删除投票”按钮没有显示我已经投票?

– gna
16-10-6在14:30

#7 楼

不知道这是否相关,但是看起来错误弹出窗口上的字体丢失了,浏览器又退回到默认字体。





评论


检查。你使用的是什么浏览器?

–Michael Stum♦
16-09-27在18:31

@MichaelStum Firefox。第一张屏幕截图也已在Edge中复制。

–AndréBorie
16-09-27在18:33

这无关紧要,但是是一个错误。 .message-text没有字体,因为它通常是由父容器设置的,在这种情况下,没有字体。 (作为参考,字体应为Arial,“ Helvetica Neue”,Helvetica,sans-serif,但此处没有CSS规则匹配)

–Michael Stum♦
16-09-27在18:43

我想知道这是否与标签随机丢失某些格式有关(见SO和MSO)

–Machavity
16-09-27在18:48

@MichaelStum我应该在另一个问题中报告吗?

–AndréBorie
16-09-27在19:03

@AndréBorie如果您不介意的话,那太好了。

–Michael Stum♦
16-09-27在19:36

@Machavity可能是这个问题吗? meta.stackexchange.com/questions/285046

–Michael Stum♦
16-09-27在19:53

@MichaelStum是的,就是这样

–Machavity
16-09-27在20:19

我很好奇。要获取“这些配置文件相同”错误弹出窗口,您需要做什么?

–兰德·托尔
16 Sep 27 '23:01



联系表上的@ randal'thor,要求合并帐户。这将为旧的和新的配置文件显示两个字段,并且验证实际上检查它们是否相同。

–AndréBorie
16-09-27在23:04

@AndréBorie是您偶然发现的,还是您实际上通常在测试这种不起眼的东西?

–user3459110
16-09-30在7:41

@AwalGarg第一个我意外地将鼠标悬停在dupehammer徽章上。第二个我必须使用联系表。除非有报酬,否则我通常不会打扰任何测试。

–AndréBorie
16-09-30在13:34

#8 楼

声誉图表似乎不再接受拖动事件,因此无法在该图表上移动:



评论


什么网站和浏览器?它在我的Chrome 53.0.2785.116中的Meta.SE和Stack Overflow上都可以正常工作,而且我从一开始就清除了缓存

– Memor-X
16-9-29在5:42

我也在Chrome 53.0.2785.116和AskUbuntu上看到了它。让我尝试再次清除缓存(结果:没有区别)。

–卡兹·沃尔夫(Kaz Wolfe)
16-9-29在5:43



我什至无法拖动选择(即根本没有可见的选择)。 Chrome 53.0.2785.116 OS X在所有其他浏览器上均可正常运行。

–蔡
16-9-29在8:57

在这里也可以正常工作:Chrome版本53.0.2785.116(64位),FF 47.0,IE11

–toesslab
16-9-29在9:42



无法在Meta,SO和AskUbuntu上的任何浏览器上进行复制,但是稍后我将看一下代码,看是否有什么问题。

–Michael Stum♦
16-9-29在15:54

使用Chrome版本53.0.2785.116 m(64位,Windows)在AskUbuntu上对我来说工作正常。

–怀特先生
16-9-29在15:54

可以肯定的是,这与新的jQuery没有关系。至少对于我而言,此功能已间歇性地(最多)工作了几个月。我实际上认为它在过去6个月中从未奏效。现在它可以在这里工作,但不能在SO上工作(如果重要的话,在Windows 7上为Chrome 53.0.2785.116,64位)。尽管我现在找不到它,但应该已经在某处(在这里或在Meta SO上)有一个错误报告。

–法比奥说恢复莫妮卡
16-9-29在16:05

我对该图的另一个问题感到困惑。因此,除此之外,可能还没有错误报告。但是正如我所说,这已经存在了很长时间,所以它不依赖于新版本的jQuery。无论如何,@ Michael,如果您想调查一下……谢谢!

–法比奥说恢复莫妮卡
16-9-29在16:39

刚意识到(通过此方法),我的问题是变焦。一切正常(至少对我来说)100%:)

–蔡
16-10-1在12:06

哎呀,@蔡,你是对的,这是变焦!这就是为什么有时它起作用而有时却不起作用的原因:因为我使用的是一台以上的PC和一个以上的浏览器,并且针对不同的SE网站具有不同的缩放设置。我认为这是“间歇性的”! :-D

–法比奥说恢复莫妮卡
16-10-5在15:47

#9 楼

在用于在新标签页中打开搜索结果的每个页面顶部的搜索框中,按Ctrl + Enter。现在,它不执行任何操作(Chrome 53,Linux,无用户脚本)或在同一标签中打开搜索结果(Firefox 45.3,Linux,无用户脚本)。由于我最近没有做任何更改,因此我将责任归咎于jQuery。

#10 楼

当我执行打开编辑器的操作时,例如单击``编辑''按钮,按e或单击10ker的``编辑标签''按钮或按t,在很长一段时间(有时> 1s)中,随后按下的键是解释为快捷方式,而不是在文本框中输入。例如,快速键入t a会跳到答案框,然后打开标签编辑器,而不是打开标签编辑器并在此处输入a,这就是t a所做的。

官方的Stack Exchange键盘快捷键处于活动状态。

我想,但我不能完全确定,这实际上是一个预先存在的错误(我想它正在做某种异步操作以进入编辑器),但是我以前几乎没有看过这个问题,而今天整个晚上一直让我很烦。因此,这可能是新错误,也可能是新的性能损失。

评论


我也在Safari和Firefox上看到了这一点,并且给人留下了这个错误是在jQuery升级的同时引入的印象。

– 200_success
16-10-5在1:11

#11 楼

每次单击自定义选项卡或转到主页时,Stack Overflow都会冻结浏览器,然后出现以下警报:



这发生在

操作系统:Ubuntu 15.10(64位)

浏览器:Firefox 45.0

在Chrome 49.0.2623.110中

it向下滚动/切换选项卡视图仅需要5〜7秒的时间

已删除的最近历史记录,缓存和cookie


编辑
>
我已经在Windows 10上对其进行了测试

Firefox版本50.0b1(测试版)

具有与上述相同的结果

评论


使用“自定义标签”,您是指新的导航吗?我会在Ubuntu上稍作尝试,但是对我来说,它在Firefox 49中运行良好:/如果单击“调试脚本”,调试器在哪里中断?

–Michael Stum♦
16-09-28在18:17

@MichaelStum是的,我的意思是新的导航。似乎此方法已中断:stub.en.js文件中的},“ submitFormOnEnterPress”:function(e){

– Frakcool
16-09-28在18:25

谢谢,将进一步调查。

–Michael Stum♦
16-09-28在18:25

同样,Windows 8.1上的Chrome 54.0.2840.41 beta-m(64位)-以前从未遇到过此问题。

–叙利亚
16-9-29在11:28

@MichaelStum您发现了什么吗?我已经发布了一个单独的但可能相关的问题:meta.stackexchange.com/questions/285633/…

–叙利亚
16-10-20在8:32

@assylias来自您自己的问题,我可以说我也有很多被忽略的标签,因此也许Michael Stum可以从那里得到提示,但是我将它们隐藏了,但是我最喜欢的标签上带有标签的问题似乎加载缓慢并冻结浏览器,直到最终至少在Stack Overflow中将它们绘制为“黄色/橙色”为止,在其他我没有收藏/忽略标签的站点中,根本没有冻结

– Frakcool
16-10-20在13:03

@MichaelStum有针对此错误的任何解决方法吗?每当我进入堆栈溢出时,我仍然会收到与上面相同的错误

– Frakcool
16年2月2日在16:22

@Frakcool我相信我已经找到了可能的原因,至少我可以重现一些缓慢的情况。我希望能尽快改善性能。

–Michael Stum♦
16 Dec 12'在13:30

@MichaelStum谢谢,这与被忽略的标签有关,我大概有100多个,一旦删除它们,我就遇到了这个问题

– Frakcool
16 Dec 12'在14:17

@MichaelStum我在我的问题中添加了赏金

–叙利亚
17年5月5日在10:43

#12 楼

我刚刚通过热门网络问题访问了此帖子,尽管按投票选择了排序选项,但帖子的排列顺序不正确,并且再次单击“投票”后,它们仍进行了正确排序。就在我写这篇文章的同时,还发布了1个答案。不知道这一切是否相关,但是您去了。

#13 楼

标签建议在第一个标签之后无效。


问一个问题。
在标签文本框中,键入任何标签的首字母。观察到有一个标签建议弹出窗口。
单击任何标签以选择该标签。请注意,已完成的标签会自动填充到文本框中。
键入第二个标签的首字母。观察到有一个标签建议弹出窗口。
单击任何标签。观察到自动填充不再起作用。
在文本框中进一步键入任何内容都不会导致标签建议弹出窗口。

如果问题已发布然后进行了编辑(因此打开了编辑UI再次),第二个标签可以用这种方式完成。但是,第三个标记在该编辑问题UI的实例中不起作用。


站点上遇到的问题:

站点:Aviation.SE

浏览器:Internet Explorer 10

评论


将检查IE10-在Chrome和IE11中对我来说似乎还可以,现在将启动IE10机器。

–Michael Stum♦
16-09-28在15:19

Edge和IE11为最新版本的@MichaelStum,是否仍完全支持IE10?

–影子向导正在接种疫苗
16-09-28在19:28



@ShadowWizard Edge和Internet Explorer从技术上讲是两种不同的浏览器,并且我们支持两种版本。因此,我们将尝试。

–Michael Stum♦
16-09-28在20:49

@MichaelStum仅供参考,您可以在IE11中运行IE10:stackoverflow.com/questions/18588769/…

– Gruber
16-9-29在18:29



根据我的@Gruber经验,我发现在极少数情况下以仿真模式运行IE并不准确。通常它可以工作。

–凯文
16-9-29在18:34

可以在航空上的IE10(Windows 8)上进行复制。适用于SO。检查根本原因。

–Michael Stum♦
16-09-30在22:27

@MichaelStum对此有任何更新吗?截至11月1日,此问题仍然存在。还经历了其他一些站点。

–凯文
16年11月1日在12:17

@kevin抱歉,已经有一段时间了,我希望在下周之前继续调查该线程中的内容。

–Michael Stum♦
16年11月8日在22:12

抬起头来,我找到了原因,但仍在寻找解决方案(在某些情况下,事件并不是由完全不同的事物引起的)

–Michael Stum♦
16 Dec 12'在11:40

#14 楼

顶部导航信誉滚动条(Chrome版本53.0.2785.116 64位,Mac OS X 10.11.6)中的问题:

1。无法使用灰色滑轨滚动。



2.。当您折叠某天的信誉时,滚动条就会消失



评论


使用Chrome 53.0.2785.92和Ubuntu 16.04无法重现此错误

–阿尔特·拉各斯
16-09-30在3:20

我也无法使用Chrome 53.0.2785.116 m(在Windows上)进行复制

– DavidG
16-09-30在15:30

在Firefox上都没有复制。

–AndréBorie
16-09-30在17:38

#15 楼

在配置文件的“信誉”选项卡上,如果自上次访问以来信誉没有任何变化,那么您获得信誉的来源将通过“向下”箭头显示,该错误是,如果获得信誉,它将显示两倍的相同来源来自相同的答案。

重新加载页面后,自上次访问以来您的声誉更改为0,并且不再可见该错误。

#16 楼

这个答案是-3,是半透明的。我单击了upvote,并收到带有一般错误的红色框(顺序为“出现错误。请重试。”)。但是我对答案的看法显示为-2,好像我的投票已被接受。

因此,我刷新了页面,发现我的投票没有被接受,答案仍然是-3。我再次单击了upvote,这一次成功了。

评论


刷新页面,然后重试。

–TuxCrafting
16-09-30在16:17

@TùxCräftîñg-嗯,我做到了。那是我上面的帖子。但是错误是我首先看到了该错误,而不是它在刷新后最终有效。

– devlin康乃馨
16-09-30在16:43

#17 楼

“活动”选项卡上的信誉图不能正确处理浏览器在Windows最新版的Chrome上的缩放。

如果将缩放比例设置为110%,然后单击该图,则蓝色区域不会完全移动,好像忽略了点击。如果将缩放比例设置为100%,效果很好。

评论


那以前有用吗?我认为没有。

–帕特里克·霍夫曼(Patrick Hofman)
16-10-1在9:24



由于不支持缩放,因此很可能从未“起作用”。 / cc @帕特里克

–影子向导正在接种疫苗
16-10-1在11:17