|
  
|
顶楼
发表于 2011-12-22 00:20
| 只看该作者
本帖最后由 dindog 于 2011-12-22 14:34 编辑
版本是10111220之后的Nightly,在聊天室建立Websocket链接时,由于代码本身的问题,连接了都不断中断,重新连接(chrome也是n个循环的,不过次数少很多,而且人家也不死机……)。如果不用聊天室的,abp阻挡掉bilibar.js就好了。出问题的是这段:
以前firefox这段是会跳到else分支,所以之前的版本没问题。- var reconnectCount=0;
- var reconnection;
- chatRoomClass.prototype.initws=function(){
- this.JSMode=true;
- self=this;
- if("WebSocket"in window){
- if(this.ws!=null){
- self.chatlog('',0,"[信息] 连接已存在...正在中断重新连接");
- this.ws.close();
- }
- resetConnection=true;
- this.ws=new WebSocket("ws://"+chatRoom.CHAT_SERVER+":88/"+this.currentChatRoom);
- this.status.innerHTML="WS连接中...";
- var self=this;
- this.ws.onopen=function(){clearInterval(reconnection);
- self.status.innerHTML='已连接.';
- resetConnection=false;$("#submit_msg")[0].disabled=false;
- if(self.onconnect!=null)self.onconnect();};
- this.ws.onclose=function(){self.status.innerHTML='已断开.';
-
- if(!resetConnection)self.chatlog('',0,"[信息] 与服务器连接中断...正在重新连接 重试次数: "+reconnectCount++);
- if(reconnectCount>30){
- reconnection=setInterval(function(){clearInterval(reconnection);self.initws();},30000);
- }
- else{
- reconnection=setInterval(function(){clearInterval(reconnection);self.initws();},1000);
- }
- };
- this.ws.onerror=function(){
- self.status.innerHTML='错误.';self.chatlog('',0,"[信息] 与服务器连接错误!");
- var reconnection=setInterval(function(){clearInterval(reconnection);self.initws();},1000);
- };
- this.ws.onmessage=function(msg){
- msgdata=msg.data.replace(/[\x5C]{2}/g,"\x5C");
- if(msg.data=="REST"){
- self.initws();
- }
- else{
- eval(msgdata);
- }
- };
- }
- else{
- this.chatlog('','SYSTEM','您的浏览器不支持Flash和WebSocket,无法使用本功能');
- }
- };
复制代码 |
|
我的回帖都是滥竽充数的,有其它人回帖时一般可以无视我哈~~ |
|
|
|
|
|
|

|
2楼
发表于 2011-12-22 00:56
| 只看该作者
| Nightly12.a1也是这样,我已经卸了换上9.0.1 一切都好了。 |
|
|
|
|
|
|
  
|
3楼
发表于 2011-12-22 01:03
| 只看该作者
Nightly12.a1也是这样,我已经卸了换上9.0.1 一切都好了。
lanjian625 发表于 2011-12-22 00:56  昨天新出现的bug。请问你是什么系统 |
|
我的回帖都是滥竽充数的,有其它人回帖时一般可以无视我哈~~ |
|
|
|
|
|
|
  
|
9楼
发表于 2011-12-22 14:31
| 只看该作者
本帖最后由 slimx 于 2011-12-22 14:42 编辑
禁掉就好.
聊天室?之前的版本功能正常么?
可能是刚刚加入这个功能,还不完善,也可能是只适用于chrome |
|
|
|
|
|
|
  
|
10楼
发表于 2011-12-22 15:09
| 只看该作者
本帖最后由 dindog 于 2011-12-22 15:12 编辑 禁掉就好.
聊天室?之前的版本功能正常么?
可能是刚刚加入这个功能,还不完善,也可能是只适用于chrome
slimx 发表于 2011-12-22 14:31  之前正常啊,Websocket我搜索了一下,说是Firefox 4就引入的,但前天之前。window.WebSocket 都是undefined,现在和chrome一样返回对象了。不知道以前是不是用ajax的
chrome和Firefox有问题的版本,聊天室(要登录)会不断提示 [信息] 连接已存在...正在中断重新连接",只是频率不一样。基本无法使用了,网站本身应该也是要改的。 |
|
我的回帖都是滥竽充数的,有其它人回帖时一般可以无视我哈~~ |
|
|
|
|
|
|
  
|
12楼
发表于 2011-12-22 15:37
| 只看该作者
本帖最后由 dindog 于 2011-12-22 15:59 编辑 必须要要注册才能用么,截个图看看
slimx 发表于 2011-12-22 15:22  卡死的话貌似不用登录。
可以用我id, dindog 12345678
控制台也会出警告的。
[15:47:56.049] Firefox can't establish a connection to the server at ws://chat.bilibili.tv:88/1. @ file:///z://z.js:37
IE9和Fx9都是正常的 |
|
我的回帖都是滥竽充数的,有其它人回帖时一般可以无视我哈~~ |
|
|
|
|
|
|
  
|
13楼
发表于 2011-12-22 16:22
| 只看该作者
本帖最后由 slimx 于 2011-12-22 16:37 编辑
能发信息,但是不会自动刷新吧
用user脚本把- if("WebSocket"in window){
复制代码 改成 |
|
|
|
|
|
|
  
|
14楼
发表于 2011-12-22 17:04
| 只看该作者
能发信息,但是不会自动刷新吧
用user脚本把
if("WebSocket"in window){
改成 if(false){
slimx 发表于 2011-12-22 16:22  9是能收能发的。会不会有什么功能坏了。 |
|
我的回帖都是滥竽充数的,有其它人回帖时一般可以无视我哈~~ |
|
|
|
|
|
|
  
|
15楼
发表于 2011-12-22 17:23
| 只看该作者
本帖最后由 slimx 于 2011-12-22 17:26 编辑
应该没有.
改了一下,有点奇怪 |
附件: 您所在的用户组无法下载或查看附件
-
1
评分次数
-
|
|
|
|
|
|

|
16楼
发表于 2011-12-23 01:18
| 只看该作者
本帖最后由 slight 于 2011-12-23 13:52 编辑 应该没有.
改了一下,有点奇怪
slimx 发表于 2011-12-22 17:23  应用了LS提供的脚本,打开B站不会再导致浏览器卡死了。
楼主提供的禁用脚本的方法也有效,另外也可在about:config,将其中network.websocket.enabled项设为false,亦可起到同等效果。版本是10111220之后的Nightly,在聊天室建立Websocket链接时,由于代码本身的问题,连接了都不断中断,重新连接(chrome也是n个循环的,不过次数少很多,而且人家也不死机……)。如果不用聊天室的,abp阻挡掉biliba ...
dindog 发表于 2011-12-22 00:20  看过此帖才了解这一问题的存在。
这是很好的研究心得,解决了一个大问题啊。不知这个问题在firefox自身随后的版本更新中能否得到解决修复? |
|
|
|
|
|
|

|
17楼
发表于 2011-12-23 13:44
| 只看该作者
非常感谢,问题解决了。
有人去bugzilla发bug么? |
|
|
|
|
|
|

|
18楼
发表于 2011-12-25 18:01
| 只看该作者
楼主也说了,这不完全算FX的问题
主要是bilibili自身网站的代码出错,但之前的版本中不支持Websocket,所以不会运行这些错误代码,而现在支持了,于是就有问题了
这问题在Chrome也会出现,但Chrome有防范机制,应该是会禁止相同的代码过度频繁的运行
所以若按现在的情况来看,重点得先修正的是bilibili,把自身网站的错误代码修正好,不然FX能加的最多也只是类似Chrome的防范机制而已 |
|
|
|
|
|
|
  
|
19楼
发表于 2012-1-2 14:23
| 只看该作者
呵呵,有人报告到bilibili,网站改了这部分,现在已经不会崩溃了。现在类似chrome。。。
本来想Firefox修复了自己部分才去bilibili上报的。。现在还想重现的可以用mason重定向到这个文件。
|
附件: 您所在的用户组无法下载或查看附件
|
我的回帖都是滥竽充数的,有其它人回帖时一般可以无视我哈~~ |
|
|
|
|
|
|

|
20楼
发表于 2012-1-6 11:15
| 只看该作者
本帖最后由 dsyo2008 于 2012-1-6 21:46 编辑
12.a1 x64 终于解决了= = |
|
|
|
|
|