www.gusucode.com > 200套html5精品模板1_50 > 200套html5精品模板1_50/046/js/main.js
$(document).ready(function(){ $("#your_email").live('focus',function(){ // Checking subcribe form when focus event var email = $(this).val(); (email == "Please enter your email address to subcribe...." || email == "Please enter a valid email address...." || email == "Subcribe process completed...." || email == "Email is already registered....") ? $(this).val('').css({'backgroundColor':'#FFF'}) : ''; }); $("#your_email").live('keypress',function(){ // Checking subcribe form when keypress event var email = $(this).val(); (email == "Please enter your email address to subcribe...." || email == "Please enter a valid email address...." || email == "Subcribe process completed...." || email == "Email is already registered....") ? $(this).val('').css({'backgroundColor':'#FFF'}) : ''; }); $("#your_email").live('blur',function(){ // Checking subcribe form when blur event var email = $(this).val(); (email == "") ? $(this).val('Please enter your email address to subcribe....') : ''; }); $("#subcribe_form").submit(function(){ // Checking subcribe form when submit to database var email = $("#your_email").val(); var email_pattern = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i; if(email_pattern.test(email)==false) { $("#your_email").val('Please enter a valid email address....').css({'backgroundColor':'#ffb2b2'}); } else { var submitData = $('#subcribe_form').serialize(); $("#your_email").attr('disabled','disabled'); $("#subcribe_submit").attr('disabled','disabled'); $.ajax({ // Subcribe process with AJAX type: "POST", url: "subcribe.php", data: submitData + "&action=add", dataType: "html", success: function(msg){ if(parseInt(msg)!=0) { var msg = msg.split("|"); if(msg[0]=='success') { $("#subcribe_submit").removeAttr('disabled'); $("#your_email").removeAttr('disabled').val(msg[1]).css({'backgroundColor':'#a5ffa5'}); } else { $("#subcribe_submit").removeAttr('disabled'); $("#your_email").removeAttr('disabled').val(msg[1]).css({'backgroundColor':'#ffb2b2'}); } } } }); } return false; }); // Contact us form submit validation $.validator.setDefaults({ submitHandler: function() { var submitData = $('#contact_form').serialize(); $("#contact_name").attr('disabled','disabled'); $("#contact_email").attr('disabled','disabled'); $("#contact_subject").attr('disabled','disabled'); $("#contact_message").attr('disabled','disabled'); $("#contact_submit").attr('disabled','disabled'); $(".status").hide(); $.ajax({ // Subcribe process with AJAX type: "POST", url: "message.php", data: submitData + "&action=add", dataType: "html", success: function(msg){ if(parseInt(msg)!=0) { var msg = msg.split("|"); if(msg[0]=="success") { $("#contact_name").val('').removeAttr('disabled'); $("#contact_email").val('').removeAttr('disabled'); $("#contact_subject").val('').removeAttr('disabled'); $("#contact_message").val('').removeAttr('disabled'); $("#contact_submit").removeAttr('disabled'); $(".status").removeClass('error').html(msg[1]).addClass('success').fadeIn(); } else { $("#contact_name").removeAttr('disabled'); $("#contact_email").removeAttr('disabled'); $("#contact_subject").removeAttr('disabled'); $("#contact_message").removeAttr('disabled'); $("#contact_submit").removeAttr('disabled'); $(".status").removeClass('success').html(msg[1]).addClass('error').fadeIn(); } } } }); return false; } }); // Contact us form submit validation rules $("#contact_form").validate({ rules: { contact_email: { required: true, email: true }, contact_subject: { required: true }, contact_message: { required: true } } }); // Twitter integration (JSON format) with AJAX $.ajax({ url: 'http://api.twitter.com/1/statuses/user_timeline.json/', type: 'GET', dataType: 'jsonp', data: { screen_name: username, include_rts: true, count: 6, include_entities: true }, success: function(tweet, textStatus, xhr) { id = 0; tweet_num = tweet.length; tweet_contains = "<h3>Recent Tweets</h3>"; while(id < tweet_num) { tweet_contains += '<div class="tweet"><span class="text">' + JQTWEET.ify.clean(tweet[id].text) + '</span><span class="date">'+ JQTWEET.timeAgo(tweet[id].created_at) + '</span></div>'; id++; } $(".two").html(tweet_contains); $(".two").hide().fadeIn(1000); } }); // Twitter data format function JQTWEET = { timeAgo: function(dateString) { // twitter date string format function var rightNow = new Date(); var then = new Date(dateString); if ($.browser.msie) { // IE can't parse these crazy Ruby dates then = Date.parse(dateString.replace(/( \+)/, ' UTC$1')); } var diff = rightNow - then; var second = 1000, minute = second * 60, hour = minute * 60, day = hour * 24, week = day * 7; if (isNaN(diff) || diff < 0) return ""; if (diff < second * 2) return "right now"; if (diff < minute) return Math.floor(diff / second) + " seconds ago"; if (diff < minute * 2) return "about 1 minute ago"; if (diff < hour) return Math.floor(diff / minute) + " minutes ago"; if (diff < hour * 2) return "about 1 hour ago"; if (diff < day) return Math.floor(diff / hour) + " hours ago"; if (diff > day && diff < day * 2) return "about 1 day ago"; if (diff < day * 365) return Math.floor(diff / day) + " days ago"; else return "over a year ago"; }, // timeAgo() ify: { link: function(tweet) { // twitter link string replace function return tweet.replace(/\b(((https*\:\/\/)|www\.)[^\"\']+?)(([!?,.\)]+)?(\s|$))/g, function(link, m1, m2, m3, m4) { var http = m2.match(/w/) ? 'http://' : ''; return '<a class="twtr-hyperlink" target="_blank" href="' + http + m1 + '">' + ((m1.length > 25) ? m1.substr(0, 24) + '...' : m1) + '</a>' + m4; }); }, at: function(tweet) { // twitter at (@) character format function return tweet.replace(/\B[@ï¼ ]([a-zA-Z0-9_]{1,20})/g, function(m, username) { return '<a target="_blank" class="twtr-atreply" href="http://twitter.com/intent/user?screen_name=' + username + '">@' + username + '</a>'; }); }, list: function(tweet) { // twitter list string format function return tweet.replace(/\B[@ï¼ ]([a-zA-Z0-9_]{1,20}\/\w+)/g, function(m, userlist) { return '<a target="_blank" class="twtr-atreply" href="http://twitter.com/' + userlist + '">@' + userlist + '</a>'; }); }, hash: function(tweet) { // twitter hash (#) string format function return tweet.replace(/(^|\s+)#(\w+)/gi, function(m, before, hash) { return before + '<a target="_blank" class="twtr-hashtag" href="http://twitter.com/search?q=%23' + hash + '">#' + hash + '</a>'; }); }, clean: function(tweet) { // twitter clean all string format function return this.hash(this.at(this.list(this.link(tweet)))); } } // ify } // jQuery image change on hover $("#social_media_wrapper a img") .mouseover(function() { var src = $(this).attr("src").match(/[^\.]+/) + "Over.png"; $(this).attr("src", src); }) .mouseout(function() { var src = $(this).attr("src").replace("Over", ""); $(this).attr("src", src); }); // Countdown wrapper settings $('.countdown').countdown({until: date}); var width = parseInt($('.countdown').css('width')) + 2; if(width > 440 && width < 460) width = 452; if(width > 590 && width < 610) width = 602; $('.countdown_center').css('width',width); });