13 comments

[ 2.5 ms ] story [ 41.1 ms ] thread
I do agree that View Source is becoming less and less useful, particularly because of JavaScript-injected DOM elements. Safari's web inspector in particular has become invaluable for this reason. Being able to see the current state of any element is incredibly useful.
There used to be a 'Page Info' option on Netscape Communicator which basically told you the timestamp of the HTML/image file. That's not in Mozilla or any other browser I've used (Firefox, Opera, Chrome). I have to load up Communicator when I want to check a page's creation/modificiation date. View Source might disappear from the menu for that reason.
You can display an "info" bar in Opera's sidebar which will tell you that if the server sends it.
Thanks, that's really helpful!
It's available as part of the Web Developer Toolbar add-in for Firefox.
> View Source might disappear from the menu for that reason.

Because Firefox/Mozilla/Chrome/Safari are all going to be open-sourced and under-go a code-overhaul over the coming few years during which some features are lost in the mix?

Do you mean the Right-Click "View Page Info" in firefox? I'm pretty sure that still exists.

(It's there in my FF3 install on Ubuntu (that has Web Developer plugin disabled), and it's also there on an XP VM I'm running with FF3.5 and no plugins)

View Source isn't going anywhere, and it continues to do the same task as always. What's changed is that websites have gotten more complex.

View Source is like a ruler. It's a great tool when you're trying to understand how a buggy was built. Not quite adequate for understanding a modern internal combustion engine.

The Web Developer Toolbar add-on for FF has a View Generated Source feature which is nice when dealing with dynamic markup (and of course Firebug rocks).
compressed js -> syntax highlighter/prettyprinter -> view source

Is that so hard?

I agree, but yes it is: 1) you can't unscramble variable names, and 2) you have to prettyprint all js, even well-written js, or create a 'compression detection' algorithm.
You forgot escape & encoded and eval()'ed inline javascript in DOM that inserts a <script> tag that bootstraps another URL-rewrited dynamically generated .js. And the best part is, the .js can not be re-requested as it's it's taken cautions to prevent re-play attack.
If it gets to the browser via HTTP then it's pretty trivial to intercept.