Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>YouTube subscriber-counter</title>
- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js" type="text/javascript" charset="utf-8"></script>
- <script type="text/javascript" charset="utf-8">
- String.prototype.reverse=(function(){return this.split("").reverse().join("");});
- var prompt_ = (function(msg,defaultText) {
- result = prompt(msg,defaultText);
- if(result==null) {
- result = defaultText;
- }
- return result;
- });
- var ytchannel = prompt_('YouTube-channel name:', 'CaptainSparklez');
- var thousands_separator = prompt_("Thousands-separator", ' ');
- var update_interval = prompt_('Update interval (ms)', 1000);
- var yt_api_url = "http://gdata.youtube.com/feeds/api/users/"+ytchannel+"?v=2&alt=json";
- function formatNumber(num) {
- return num.toString().reverse().match(/.{1,3}/g).join(thousands_separator).reverse();
- }
- $( document ).ready( function() {
- var $body = $('body');
- var $number = $('#number');
- var $name = $('#name');
- var interval = 0;
- $name.text(ytchannel + ":");
- var resize = function() {
- var bodyWidth = $body.width();
- var size = 0;
- do {
- size += 1;
- $number.css('font-size', size + 'px');
- } while($number.width() < bodyWidth-10);
- $name.css('font-size', Math.round(size/7) + 'px');
- $number.css('margin-left', '-' + Math.round($number.width()/2) + 'px');
- $number.css('margin-top', '-' + Math.round($number.height()/2) + 'px');
- $name.css('margin-top', (Math.round($number.offset().top)) + 'px');
- }
- var refreshSubcount = (function() {
- $.getJSON(yt_api_url, function(data) {
- subcount = data.entry.yt$statistics.subscriberCount;
- $number.text(formatNumber(subcount));
- resize();
- });
- });
- function toggleInterval(e) {
- event.preventDefault();
- if(interval) {
- $body.addClass('pause');
- clearInterval(interval);
- interval = 0;
- } else {
- $body.removeClass('pause');
- refreshSubcount();
- interval = setInterval(refreshSubcount, update_interval);
- }
- window.getSelection().removeAllRanges();
- }
- toggleInterval();
- $(window).resize(resize);
- $body.dblclick(toggleInterval);
- });
- </script>
- <style type="text/css">
- * {
- margin: 0px;
- padding: 0px;
- font-family: Verdana, Geneva, sans-serif;
- }
- body {
- background-color: black;
- color: white;
- cursor: pointer;
- }
- body.pause {
- color: #222;
- }
- #name {
- text-align: center;
- text-decoration: underline;
- }
- #number {
- font-weight: bold;
- top: 50%;
- left: 50%;
- position: absolute;
- margin-top: -65px;
- margin-left: 0px;
- white-space: nowrap;
- }
- </style>
- </head>
- <body class="pause">
- <div id="name"></div>
- <div id="number">Loading....</div>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement