Firebug 说“这个页面上没有 JavaScript”,即使这个页面上确实存在 JavaScript

为什么 Firebug 说有 No Javascript on this page,而页面上明明有很多 JavaScript。我甚至重新加载了几次页面,以确保它仍然显示相同的信息。

它以前从来没有这样过,但是突然之间它就不乖了。

是因为某些配置问题还是因为其他原因?

50107 次浏览

As mentioned, sometimes there's a Javascript syntax error that invalidates the whole script. But I have also had this, and simply opening up the page in a new tab or window and refreshing firebug (disable, enable) gets the javascript to show up again.

One time this caught me out was when I published one of my sites and I was checking it out. No Javascript was working, there were no errors in the console and firebug showed no scripts.

It turned out that in that instance, I'd forgotten to allow the site in NoScript - so there really were no scripts being loaded.

Not sure if that's the problem you're facing but it's worth being aware of.

Similar things have happened to me because I forgot to add the closing tag.

DON'T do this:

<script src="some.url" type="text/javascript">

or

<script src="some.url" type="text/javascript"/>

DO this instead:

<script src="some.url" type="text/javascript"></script>

The same problem just happened to me. I thought that it was a problem in my scripts, but I checked google.com and the problem persisted. My problem was that I had updated my version of FF and kept the old version of FireBug. When I updated FireBug and everything was solved.

EDIT 2017 April

This answer is now outdated and I'm not even testing it anymore because I'm no longer using Firebug (a shame, I loved it years ago in a time it was The tool of trade for web developing).

EDIT 2014 November

The original answer is now more than a year outdated due to firebug evolution. Thanks to @AmadeusDrZaius to keep it on tracks

Answer for outdated firebug versions For anyone still with this problem after updating Firebug. Just click Clear Activation List option inside the Firebug menu.

For those who can't find it, note that "Clear Activation List" shows up in the dropdown from the Firebug icon in the toolbar, but not the Tools > Web Developer > Firebug menu.

Firebug dropdown: Clear Activation List

I guess due to the bug previous hitting your working page it stays listed as "no activate FB for this site please".

I tried everything on this list and nothing worked for me except resetting Firefox like so:

https://support.mozilla.org/en-US/kb/reset-firefox-easily-fix-problems

I also got this error when attempting to use Ajax to a different server than the one serving up the page. JavaScript only allows Ajax access to the server that served up the page.

If the problem only shows up on a single page, check that your script folder is referenced from current folder (".") or that's reachable from the server root ("/").

<script src="./scripts/pagescripts.js" type="text/javascript"></script>

may not be the same as

<script src="/scripts/pagescripts.js" type="text/javascript"></script>

I realize there are already 10 answers to this question, but in my case none of them helped. I'm running Firefox version 39.0 and Firebug version 2.0.11. The only fix is to completely restart Firefox (i.e. not just the tab or instance with the problem).

Perhaps it's due to Firefox's over-usage of memory, or maybe there's a bug in Firebug. I can't speak to that, but what I do know is it didn't work. I killed Firefox, opened the exact same page again with no changes made and now it works. This has happened to me numerous times and a complete restart always fixes it, but that's the only thing that does.

Since Firefox 49.0 and Firebug 2.0.18 the Script panel is broken. This is due to some internal Firefox API changes. And because Firebug is officially discontinued, this unfortunately won't get fixed anymore.

There was also a bug in Firebug 2.0.11 (and below) in combination with Firefox 39.0 causing this problem. This bug is filed as issue 7918.
It happens when the Script panel is enabled and you close Firebug and reopen it.

You can see two related error messages logged to the Browser Console (can be opened via Ctrl+Shift+J or Firebug menu > Developer > Browser Console):

error occurred while processing 'attach: TypeError: docShell is null Stack: getChildDocShells@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:53:7 ...

and

onPacket threw an exception: Error: Server did not specify an actor, dropping packet: {"error":"unknownError","message":"error occurred while processing 'attach: TypeError: docShell is null\nStack: getChildDocShells@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/devtools/server/actors/webbrowser.js:53:7 ...

Solution:

The only solution until this bug is fixed is to restart Firefox completely.

This problem is STILL happening (Aug 2015) with Firefox 39.0.3 and Firebug 2.0.11

For people saying the code is wrong or missing end tags etc. all I did to get all the javascript to reappear in tab was to shut down Firefox and restart it. I didn't change anything. Also that "Clear Activation List" option didn't work (no idea what that means)

I upvoted @Tom_Thomson's answer above, but I am wondering if simply removing and then reinstalling the Firebug add-on might not have accomplished the same thing without losing all the other stuff like bookmarks.

FWIW this problem is still happening in August 2016. I'm using Firebug 2.0.17 with Firefox Dev Edition 50.0a2.

As a workaround, I'm able to use the Developer Tools, though they are not as robust as Firebug (when it's working).

I encountered No Javascript on this page after upgrading Firefox to ver 50.0, with Firebug ver 2.0.18. I tried refreshing Firefox, even completely uninstall Firefox and installed again. Nothing works for me.

A couple of hours later, I downgraded Firefox to 49.0.2, and voila, it works right away. I downloaded the old version here.

As of Firefox version 50, it seems that Firebug will no longer work as Mozilla are migrating to Firefox Devtools. The tab Tools/Web Developer has a 'debugger' option. See this page for a discussion on the migration. Read all the posts dated 19 November for further information.

It seems to me that the option gives less functionality but Firebug per se is never going to be fixed for Firefox 50 and beyond

Well Firefox native Inspector is good... I know that you will miss some things, but in general we can survive with it. The good news is... less one addon, FF will be faster :)

From firefox 49, the fire bug will be built in and it is called fire-bug next. So the fire bug add on won't work properly and no issues will be solved. So you can use firefox inspector. See here for details information