Посмотрите инспектором, на mouseover висит скрипт, только он минифицированный и склееный. Имя у него тоже генерится
(function($, undefined) {
$.widget("ui.pfCatEffects", {
options: {},
_init: function() {
this.$this = this.element;
this.$childs = this.$this.find('li');
this._cling([440, 500], [440, 500], "marginLeft", "marginTop");
},
_cling: function(d, c, a, b) {
this.$childs.find('img').each(function(j, e) {
var x = $(e),
u = 0,
m = 0,
s = 0,
q = 0,
g = a || "left",
o = b || "top",
f = parseInt(x.css(g)),
v = parseInt(x.css(o)),
p = false,
n, k, r = function(i, h) {
return i > 0 ? Math.pow(i, h) : -Math.pow(-i, h)
};
x.hover(function(h) {
if (typeof h.offsetX === "undefined" || typeof h.offsetY === "undefined") {
var t = $(h.target).offset();
h.offsetX = h.pageX - t.left;
h.offsetY = h.pageY - t.top;
}
clearTimeout(n);
clearTimeout(k);
x.stop(0, 1);
n = setTimeout(function() {
p = true
}, 10);
u = x.width() / 2;
m = x.height() / 2;
s = h.pageX - (h.offsetX || h.layerX) + u;
q = h.pageY - (h.offsetY || h.layerY) + m;
kw = d ? (d[0] - u) / d[1] : 0.2;
kh = c ? (c[0] - m) / c[1] : 0.2
}, function() {
clearTimeout(n);
clearTimeout(k);
k = setTimeout(function() {
p = false;
var h = {};
h[g] = [f, "easeOutElastic"];
h[o] = [v, "easeOutElastic"];
x.animate(h, 1000)
}, 100)
}).mousemove(function(i) {
if (p) {
var h = {};
h[g] = f + r(i.pageX - s, kw);
h[o] = v + r(i.pageY - q, kh);
x.css(h)
}
return false
})
})
}
});
})(jQuery);;
$('.ny .content-menu').pfCatEffects();