Reputation: 1314
I've got the google analytics javascript and I want to make it smaller. But I thought that you couldn't just put an enter somewhere... So where CAN I start a new line in this code?
var _gaq = _gaq || []; _gaq.push(['_setAccount', 'secret']); _gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
EDIT: Why? Because my screen is to small. It's for readability.
EDIT2: What about this approach? (The use of a '\')
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : '\
http://www') + '.google-analytics.com/ga.js';
Upvotes: 2
Views: 887
Reputation: 16753
You can do it manually after every semicolon, but you can also do it automatically. Try entering "javascript formatter" into Google and you get Online JavaScript Beautifier for example.
This is the code after "beautification":
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'secret']);
_gaq.push(['_trackPageview']);
(function () {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
Upvotes: 0
Reputation: 84150
I'm really not sure why you want to do this, nor would I recommend it, but here you go.
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'secret']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript'; ga.async = true;
var start;
if ('https:' == document.location.protocol) {
start = 'https://ssl';
} else {
start = 'http://www';
}
ga.src = start + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
Upvotes: 2
Reputation: 32841
You can start a new line after each semi-colon.
Before:
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
After:
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
To my eye, this makes it much easier to read. I wouldn't necessarily keep it this way when I deploy it, but you could.
In addition to being easier to read, this makes it easier to step through line by line if you are debugging.
Upvotes: 2
Reputation: 34150
try online YUI compressor it works for javascript and css.
Upvotes: 2
Reputation: 22728
after any ';'
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'secret']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
But why do you want to do that?
Upvotes: 1