h5ai/src/_h5ai/client/js/inc/ext/link-hover-states.js
2012-10-05 19:55:48 +02:00

42 lines
776 B
JavaScript

modulejs.define('ext/link-hover-states', ['_', '$', 'core/settings'], function (_, $, allsettings) {
var settings = _.extend({
enabled: false
}, allsettings['link-hover-states']),
selector = "a[href^='/']",
selectLinks = function (href) {
return $(_.filter($(selector), function (el) {
return $(el).attr('href') === href;
}));
},
onMouseEnter = function () {
var href = $(this).attr('href');
selectLinks(href).addClass('hover');
},
onMouseLeave = function () {
var href = $(this).attr('href');
selectLinks(href).removeClass('hover');
},
init = function () {
if (settings.enabled) {
$('body')
.on('mouseenter', selector, onMouseEnter)
.on('mouseleave', selector, onMouseLeave);
}
};
init();
});