Похоже, что все эти операторы делают одно и то же, только с разными элементами списка. Предполагая, что это правильно, вы можете сделать это:
$("ul.side-block-content li").hover(
function(){
var link = $(this).find(".article-title a"),
span = link.find("span");
span.replacewith($titleMarquee + link.text() + '</span></marquee>');
},
function(){
var link = $(this).find(".article-title a"),
marquee = link.find("marquee");
marquee.replaceWith('<span>' + link.text() + '</span>');
}
);
hover
является ярлыком для подключения функций к mouseenter
и mouseleave
. Внутри каждой функции this
будет ссылаться на сам элемент li
, поэтому, если мы поместим его в объект jQuery, мы можем использовать find
для поиска его потомков. Похоже, вы работаете в основном с содержимым ссылки, поэтому код находит эту ссылку, затем находит либо span
(на mouseenter
), либо marquee
(на mouseleave
) и заменяет ее на marquee
или span
, содержащий текст ссылки.