js定时的几种方式及插件变量公用(直接使用jsp中js变量)

js定时的几种方式

     1,function show_tip(){

getTipData();

setTimeout("show_tip()",3000);

}

     2,直接用jquery插件:

jsp中的上下文等要用到jsp专属的内置对象的比如(${pageContext.request.contextPath}),

只能在jsp中识别得到,但是类似插件的js文件需要用这种的话可以把以上要用的作为变量声明在jsp页面的全局js中,

这个js中再加载js插件,是js插件的代码就相当在jsp中写的,当然可以直接用这个全局变量(变量在哪些脚本前面,这些脚本可直接用)

jsp中:

weburl变量jquery.message.offer.js中可以直接用

     <script>

var webUrl = "${pageContext.request.contextPath}";

$.getScript("${pageContext.request.contextPath}/resources/js/message/jquery.timer.js",////定时到这里即可

function() {

$.getScript("${pageContext.request.contextPath}/resources/js/message/jquery.message.offer.js",//自定义插件函数

function() {$.getScript("${pageContext.request.contextPath}/resources/js/message/jquery.form.js",//表单插件

function() {

$(".btnhr30").on('click',

function() {

checkCanBuy();

});

/* 每3秒取一次数据 */

timermessageRecord = $.timer(3000,

function() {

var count=infoCount(0);

   //alert(count);

if(count>0){

$("#button_messageRecord").val("消息("+count+")");

$("#button_messageRecord").fadeOut(100).fadeIn(100);////////////闪烁效果

}

}); 

$(".class_customerNameSet").on('click',

function(){

switchCustomer(this);

}

);

//$(".class_customerNameSet").eq(0).click();

//checkmessageRecord(1);

});

});

});

</script>

jquery.timer.js:

     /**

 * jQuery Timer Plugin (jquery.timer.js)

 * @version 1.0.1

 * @author James Brooks <[email protected]>

 * @website http://james.brooks.so

 * @license MIT - http://jbrooksuk.mit-license.org

 */

(function($) {

jQuery.timer = function(interval, callback, options) {

// Create options for the default reset value

var options = jQuery.extend({ reset: 500 }, options);

var interval = interval || options.reset;

if(!callback) { return false; }

var Timer = function(interval, callback, disabled) {

// Only used by internal code to call the callback

this.internalCallback = function() { callback(self); };

// Clears any timers

this.stop = function() { 

if(this.state === 1 && this.id) {

clearInterval(self.id); 

this.state = 0;

return true;

}

return false;

};

// Resets timers to a new time

this.reset = function(time) {

if(self.id) { clearInterval(self.id); }

var time = time || options.reset;

this.id = setInterval($.proxy(this.internalCallback, this), time);

this.state = 1;

return true;

};

// Pause a timer.

this.pause = function() {

if(self.id && this.state === 1) {

clearInterval(this.id);

this.state = 2;

return true;

}

return false;

};

// Resumes a paused timer.

this.resume = function() {

if(this.state === 2) {

this.state = 1;

this.id = setInterval($.proxy(this.internalCallback, this), this.interval);

return true;

}

return false;

};

// Set the interval time again

this.interval = interval;

// Set the timer, if enabled

if (!disabled) {

this.id = setInterval($.proxy(this.internalCallback, this), this.interval);

this.state = 1;

}

var self = this;

};

// Create a new timer object

return new Timer(interval, callback, options.disabled);

};

})(jQuery);

猜你喜欢

转载自yuhuiblog6338999322098842.iteye.com/blog/2324783