Изменение background-position - лучше использовать jQuery или: hover с Selectivizr? - PullRequest
0 голосов
/ 23 декабря 2010

Я уже некоторое время делаю фоновые ролловеры с помощью jQuery, например:

 $("#menusearchbutton").hover(function(){$(this).css('backgroundPosition', '0px -24px');},function(){$(this).css('backgroundPosition', '0px 0px');});

, но я недавно натолкнулся на Selectivizr, который позволяет использовать псевдоклассы в IE6-8, включая: hover.

Это был бы лучший метод, чем использование jQuery? Конечно, они оба JS, поэтому не требуется, чтобы пользователи включали JavaScript. Но кроме этого, есть ли какая-то польза от использования одного вместо другого?

Приветствия:)

Ответы [ 2 ]

2 голосов
/ 23 декабря 2010

:hover уже работает в IE7 +, IE6 допускает его только с элементами <a> ... поэтому я бы сказал, что вы уже можете использовать только CSS без библиотеки, если IE6 не представляет проблемы.

#menusearchbutton { background-position: 0px 0px; }
#menusearchbutton:hover { background-position: 0px -24px; }
0 голосов
/ 23 декабря 2010

Ник прав: вы должны использовать native: hover. Стоит отметить несколько вещей: эффект наведения не работает в IE, если <a> не имеет атрибута href="". не забывай это.

Кроме того, мы часто хотим иметь эффект наведения на div. Это из-за отображения div по умолчанию. Если вы хотите, чтобы тег <a> выглядел как div, используйте display:block в своем CSS.

...