Firefox SDK Extension Builder - inspecting / debugging html and dom of panels - debugging

How do you debug panel's html?

I think the DOM inspector should allow you to do this.
https://addons.mozilla.org/en-US/firefox/addon/dom-inspector-6622/
https://developer.mozilla.org/En/DOM_Inspector
Although it doesn't have a console, you can use the inbuilt Scratchpad (Shift+F4) to run some js manually. You need to enable access to chrome-scope first though. More info here: https://developer.mozilla.org/en/Tools/Scratchpad#Using_Scratchpad_to_access_Firefox_internals

If you mean, how do you inspect html elements in a Panel using Firefox dev tools or Firebug, the answer is unfortunately that you cannot do this - those tools do not support panels at this time.

Well, it seems there is no really a way to do it in the panel.
So the best way is to use a tab instead of a panel. In it theres no problem to easily inspect HTML.
Some minor shifts and quirks of panel can be dealt with later, by 'try and see' method.

Related

What is the name of the stock Firefox tool to display HTML code for the part of the page under the mouse?

Less than month ago, by accident I discovered a nice tool in Firefox that was installed by default. I don't remember the name (probably code inspector or something like that) but I used Ctrl+Shift+I (Tools -> Webdeveloper -> Name of tool) shortcut to run it.
What was the tool? The tool worked such that when you positioned the mouse over some place in the webpage, in the tool's window you would see the HTML code for that place. Now, I my system is updated, and this tool has disappeared from my browser. I'm very disappointed. Anyone know what tool I'm looking for?
Thanks in advance,
Kuba
By the sound of what you are describing it was probably the Web Developer addon, might also have been Firebug (which in my opinion is better).
You can try right clicking on the page element and select "Inspect Element" which will enable element inspection. This will enable you to view the HTML contents of the elements under your mouse.
The name of this tool is: Page Inspector
https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector

Manipulate Html from Firefox Extension

I am creating a Firefox extension that is somewhat similar to Firebug. There is a panel (or vbox) at the bottom of the browser that allows users to specify colors to certain Html elements. When they click the OK button, I would like these colors to get updated on the current web page.
I have my JavaScript working when I click the button (i am just throwing an alert), however when I change that JavaScript to change the css or styles of an element (by either using document.getElementById or jquery), nothing changes.
Is there something with Firefox extensions that I am missing? Any help is appreciated.
Let me know if you have any questions. Thanks
https://developer.mozilla.org/en/Extension_Frequently_Asked_Questions#Accessing_the_document_of_a_webpage_doesn%27t_work
You want content.document.getElementById() and similarly for every other construct you use.

Firefox Live DOM

Is it possible through a plugin or setting or something to allow Firefox to recognize the live DOM source code?
Basically, firebug or other similar tools can recognize elements on the page which Firefox does not.
I understand with these extensions I have the ability to see such changes made by javascript, but Firefox does not seem to fully recognize them.
I'll try to clarify.
If I load a page and view source (ctrl-U), I see what the server sent to Firefox, and what Firefox ostensibly recognizes as the source code of the page. If in that source code, there is javascript which alters the DOM, and then I hit (ctrl-U) again, the code is not updated.
I am using a testing tool (iMacros firefox plugin) to automate functionality, but it does not recognize the updated DOM because Firefox does not. Firebug and similar tools can recognize these "live" updates. Does that help?
http://www.chapter31.com/2006/12/04/viewing-ajax-generated-source-code/
You can try using the web-developer extension with a view-generated-source option.
I'm still not sure I understand your question, but I think what you're getting at is the Web Developer extension for FireFox, specifically its "View Generated Source" feature.
That will let you see the altered DOM.
Firebug gives u this ability:
for instance check the HTML tab when running a jquery ticker and see the dynamic changes live in the DOM
Usually, when I have weird issues with either the console or the DOM inspector with firebug, I find restarting the browser and validating your code is the way forward.
That said, I'm not really following your question, the document that firebug shows is the same one in the firefox window...?
It looks like the problem is not that you want firefox to show the current DOM when you hit CTRL+U, but that you want some automated testing tool to be able to test your web pages.
Perhaps you should use a testing tool that is suited to the job of testing rich web applications, Selenium, for example, can do this.

Essential Firefox Plugins/Extensions? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What firefox plugins could you not live without, as relates to webdev?
My list would be:
DBGBar
Dom Inspector
Firebug
Firecookie
Google toolbar (useful for seo)
Live HTTP
ReloadEvery
TamperData
Web Developer
I am always on the lookout for new ones though, so I wonder if anyone knows of any great ones that I may have missed?
Firebug is the main one I use.
Web Developer is quite useful (firebug Andrew mentions is no doubt #1)
IETab is a nice to have (IE in a Firefox Tab)
No mention of Greasemonkey or Mason?
Live HTTP headers, in addition to some already mentioned.
NoScript. Not just for blocking spam - it's a lot quicker than flipping the script setting on and off manually, and lets you simulate third-party servers going down.
You can also get a lot of useful info just from Firefox's built in error console (in the Tools menu) - among other things it'll point out broken CSS code.
YSlow - analyzes web pages and tells you why they're slow.
MeasureIt - Draw out a ruler to get the pixel width and height of any elements on a webpage. Even better is the Xray bookmarklet.
Hackbar Simple security audit / Penetration test tool.
FirePHP is a Firebug extension for AJAX Development
ColorZilla 2.0 is an advanced eyedropper, colorpicker, page zoomer and some other things.
TestGen4Web - Just like your VCR - for Firefox. It records what you do, stores it, and plays it back on demand.
the HTML Validator plugin is priceless, especially when you're working on stuff written by someone else who may not be so careful with standards compliance...
Firebug, Web Developer toolbar and YSlow for Firebug are some of my picks.
ff-activex - allows to use active-x plug-ins in Firefox
I (ab)use Stylish to experiment with/prototype css changes. Yes you can do it in Firebug but it's not easy to keep track of all the edits you've made and it's not easy to copy & paste those edits back into your css file. Also, if you hit F5 you lose all changes made in Firebug.
Stylish survives page refresh and since it's just text you can simply select all to copy & paste your changes. Of course, it doesn't provide a css inspector or a DOM tree view but that's what Firebug is for.
Web Developer
Firebug
Delicious
Might also add Page Validator
Firebug is the greatest.
Also, not a dev tool but I have found it very useful and easy to use, Foxmarks bookmark manager.
Two other ones that I use are ...
Search Status (SEO related) http://www.quirk.biz/searchstatus/
Ad Block Plus (Blocks Ads) http://adblockplus.org/en/
Many of my favourites have been mentioned. To these I'd add:
Adblock Plus: removes ads
Add-Art: replaces ads with art
Auto Copy: copies to clipboard on select
Tree-Style Tab: shows tabs like a tree
Some of my favorites among others which already mentioned ,
TabKit - Shows tabs in separate panel
, closes the tabs in groups ,
grouping of tabs.
Morning Coffee - restore the tabs
those are saved to view them
later.
Undo closed tabs. This is what I miss from IE8.
FEBE, for backing up the settings of Mozilla.
In addition to already mentioned addins:
ViewState - Displays the current ASP.NET page viewstate size in the status bar.
ColorZilla - Advanced Eyedropper, Color Picker, Palette Viewer and other colorful goodies for your Firefox
Besides the ones already mentioned (especially the marvellous Firebug), these are the development related ones I've found very useful:
JSONovich does a good job at pretty-printing and colorizing JSON.
User Agent Switcher is very handy for developing mobile web sites (or just for the sake of curiosity) -- "I'm an iPhone, reveal me your contents!"
Sometimes Firefox leaves stuff in the browser cache even on reloads. The Clear Cache Button helps with this.
Header Spy is similar to Live HTTP headers, but displays header information (and access to lots of more options) in the statusbar.
Another one I use a fair amount is the Amazon S3 Firefox Organizer (S3Fox)
In addition to those already mentioned, Selenium IDE.
I've found Venkman to be useful recently, in addition to firebug and others already mentioned.
Venkman aims to provide a powerful JavaScript debugging environment for Gecko-based browsers...
I find it interesting that so many people name a significant number of addons that Web Developer toolbar does for you. While they are all great plugins and might have a couple extra options, not sure if its worth it to have those plugins (for instance, MeasureIt)
Here is my list:
- Web Developer Toolbar (if you're a web developer [period])
- FireBug (essential for javascript/AJAX debugging)
- Google Page Speed (similar to YSLOW but it's from Google, very useful)
- ColorZilla (great color picker)
- HTML Validator (saves a bunch of time loading w3.org's page)
- Tab Mix Plus (anything and everything to do with tabbed browsing)
- Screengrab (if you use screenshots at all, use this)
- Google Toolbar (SEO)
My list of addons which I use for development is:
Firebug
Poster
HTML Validator
Web Developer
Pinger
I think those are essential for proper web development.

Firefox add-ons

What Firefox add-ons do you use that are useful for programmers?
I guess it's silly to mention Firebug -- doubt any of us could live without it. Other than that I use the following (only listing dev-related):
Console2: next-generation error console
DOM inspector: as the title might indicate, allows you to browse the DOM
Edit Cookies: change cookies on the fly
Execute JS: ad-hoc Javascript execution
IE Tab: render a page in IE
Inspect This: brings the selected object into the DOM inspector
JSView: display linked javascript and CSS
LORI (Life of Request Info): shows how long it takes to render a page
Measure IT: a popup ruler.
URL Params: shows GET and POST variables
Web Developer: a myriad of tools for the web developer
Here are mine (developer centric):
FireBug - a myriad of productivity enhancing tools, includes javascript debugger, DOM inspector, allows you to edit the CSS/HTML on the fly which is highly valuable for troubleshooing layout and display problems.
Web Developer - again another great developer productivity tool. I mostly use it for quickly validating pages, disabling javascript (yes I disable javascript sometimes, don't you?), viewing cookies, etc.
Tamper Data - lets you tamper with http headers, form values, cookies, etc. prior to posting back to a page, or getting a page. Incredibly valuable for poking and prodding your pages, and seeing how your web app responds when used with slightly malicious intent.
JavaScript Debugger - has a few more features than javascript debugger provided by firebug. Although I must admit, I sparingly use this one since firebug has largely won me over.
Live HTTP Headers - invaluable for troubleshooting, use it frequently. Lets you spy on all HTTP headers communicated back and forth between client and server. It has helped me track down nefarious problems, especially when debugging issues when deploying your web app between environments.
Header Spy - nice addon for the geeky types, shows you the web server and platform a web site runs on in the status bar.
MeasureIt - I don't use this all too frequently, but I've still found it valuable from time to time.
ColorZilla - again, not something I use all that frequently, but when I need it, I need it. Valuable when you want to know a color and you don't want to dig through a CSS file, or open up a graphics editing app to get a color embedded in some image.
Add N Edit Cookies - this has been a great debugging tool in web farms where the load balancer writes a cookie, and uses the cookie value to keep your session "sticky". It allowed me to switch at will between servers to track down problems on specific machine. Also a good tool if you want to try to mess with a site that uses cookies to track your login status/account, and you want to see how your code responds to malformed or hacked info.
Yellowpipe Lynx Viewer Tool - yeah I know what your thinking, lynx, who needs it, its so 1994. But if you are developing a site that needs to take web accessibility into account (meaning accessible to users with visual impairments who use screen readers), or if you need to get a sense of how a web spider/indexer "sees" your site, this tool is invaluable. Granted, you could always just go out and grab Lynx for yourselfhere's the windows xp port that I use.
I've got a handful of other addons that I've used from time to time that I'll just quickly mention: FireFTP (one I installed wasn't stable and I've not tried a newer release), Html Validator (also found this one unstable, least back when I installed like a year ago), IE Tab (I usually just have both IE and FireFox open concurrently, but that is just me, I know many others that find this addon useful).
I'd also recommend the Web Developer extension by Chris Pederick.
As far as web development, especially for javascript, I find Firebug to be invaluable. Web developer toolbar is also very useful.
The ones I have are...
Y-SLow
Live Headers
Firebug
Dom Inspector
One that wasn't mentioned yet is this HTML Validator extension that I found very useful.
#Flávio Amieiro
MeasureIt is an unnecessary extension to have if you install the Web Developer Toolbar. Web Developer Toolbar includes a ruler as one of its features. Under the "Miscellaneous" category for Web Developer click the option "Display Ruler" to use a ruler identical to the MeasureIt one.
That will allow you reduce the number of extensions needed by at least one.
Firefox addons:
FireBug:helps web developers and designers test and inspect front-end code. It provides us with many useful features such as a console panel for logging information, a DOM inspector, detailed information about page elements, and much, much more.
Web Developer-gives you the power disable CSS, edit CSS on the fly, measure certain areas of a page and much more.
ColorZilla
Just click on the icon, hover over the area you'd like to know the hex color for, and click.
Window Resizer
to make sure the layout is displayed properly in the standard resolutions of today.
Total Validator
validating websites much easier by checking HTML, links, CSS and doing a lot more.
Web Developer for web development. Scribefire if you're a blogger-progammer
For web developing I use the Web Developer Toolbar, CSS Viewer and MeasureIt.
But I'm really not one of those who has a thousand of extensions to do everything. I like to keep things simple.
EDIT: Thanks to Dan's answer I don't need MeasureIt anymore. Can't believe I've never seen that! I guess I'll just have to pay more atention to this WebDeveloper toolbar.
Adding to everyones lists, Tamper Data is quite useful, lets you intercept requests and change the data in them.
It can be used to bypass javascript validation and check whether the server side is doing its thing.
I use Web Developer, it's a real time saver.
+1 for LORI ("life-of-request-info"). It's a very convenient alternative for rough measurements of the load time of a particular web page -- the kind of thing that you might otherwise use an external stopwatch for.
New Tab Homepage. Combined with a "speed dial"-type homepage (a personal, fast-loading page of links that you use frequently), helps you get where you're going faster when you open a new browser tab.
LastTab. Changes the behavior of Ctrl+Tab to let you navigate back and forth between your most-recently-used tabs with repeated presses of Ctrl+Tab, the same way that Alt+Tab works in Windows. Also provides a nice view of all open tabs while Ctrl is still being held down for easy navigation. (The resultant behavior is very similar to the Ctrl+Tab behavior in recent releases of Visual Studio.)
FireFTP is good for grabbing/uploading any necessary files.
I find Hackbar to be quite useful. Very useful if you want to edit the querystring part of the url, to test for vulnerabilities, or just general other types of testing where you might end up with complicated query string values.
I was learning DOM inspector, but I've switched to Firebug.
Some of which has been missed above are here
Load Time Analyzer – View detailed graphs of the loading time of web pages in firefox. The graphs display events like page requests, image loading times etc.
Poster – A must have tool for web developers enabling them to interact with web services and other web resources.
Aardvark – A cool extension for web developers and designers, allows them to view CSS attributes, id, class by highlighting page element individually.
Fiddler is a really great debugging proxy. Think of it as a more powerful version of the "Net" panel in Firebug or the Live HTTP headers.
It used to be an IE-only extension, now it also has hooks into Firefox.
Groundspeed, is useful for testing server side code. It was created for input validation tests during pentest, but can be useful for any test that require manipulating input (similar to TamperData).
It lets you control the form elements in the page, you can change their type and other attributes (size, lenght, javascript event handlers, etc). So for example you can change a hidden field or a select to a textbox and then enter any value to test the server response and stuff like that.

Resources