引入jquery.hoverdelay.js
(function($) {
$.fn.hoverDelay = function(options) {
var defaults = {
hoverDuring: 200,
outDuring: 200,
hoverEvent: function() {
$.noop();
},
outEvent: function() {
$.noop();
}
};
var sets = $.extend(defaults, options || {});
var hoverTimer, outTimer;
return $(this).each(function() {
$(this).hover(function() {
clearTimeout(outTimer);
that = this;
hoverTimer = setTimeout(function() { sets.hoverEvent.apply(that) }, sets.hoverDuring);
}, function() {
clearTimeout(hoverTimer);
that = this;
outTimer = setTimeout(function() { sets.outEvent.apply(that) }, sets.outDuring);
});
});
};
})(jQuery);
给元素绑定hoverDelay函数:
$('.filter-venues-result>ul>li').hoverDelay({
hoverEvent: function() {
$.ajax(url, parameter, function(data) {
if () { //根据元素是否存在,判断如果加载了,那么就不加载
} else { //如果没加载就开始加载
}
});
}
});
/
/*附代码*/
/*
*监听鼠标移动到场馆上,获取场馆简介
*/
venues.hoverGetSum = function() {
$('.filter-venues-result>ul>li').hoverDelay({
hoverEvent: function() {
var _THIS = $(this);
var _venueId = _THIS.attr('js_venueId');
if ($('.summary', _THIS).length <= 0) { //如果不存在了,就加载
var parameter = {
"venueId": _venueId,
"clickDay": ""
};
WhsmwyCommon.AjaxJsonCall('/wh_whpark/cultureCloud/service/CulturalVenues.venueDetail.json', parameter,
function(data) {
var _Html = '';
var _DATA = data.responseData.data;
if (WhsmwyCommon.isEmpty(_DATA)) { //返回data为空对象
_Html = '<div class="summary">' +
' <a href="venues_view.jsp?id=' + _venueId + '" target="_blank">获取场馆简介失败。</a>' +
'</div>';
} else {
var _venueMemo1 = _DATA.venueMemo;
var _venueMemo = WhsmwyCommon.CutStr(_venueMemo1.replace('<p>', '').replace('</p>', ''), 300);
_Html = '<div class="summary">' +
' <a href="venues_view.jsp?id=' + _venueId + '" target="_blank">' + _venueMemo + '</a>' +
'</div>';
}
if ($('.summary', _THIS).length <= 0) { //如果不存在了,就加载
$('dl', _THIS).after(_Html);
}
},
function(XMLHttpRequest, textStatus, errorThrown) {
var _Html2 = '<div class="summary">' +
' <a href="venues_view.jsp?id=' + _venueId + '" target="_blank">获取场馆简介失败。</a>' +
'</div>';
if ($('.summary', _THIS).length <= 0) { //如果不存在了,就加载
$('dl', _THIS).after(_Html2);
}
});
}
}
});
};