Обновление: найдено решение, см. Ниже.эффект усадки/увеличения масштаба для нажатой кнопки?
Я пытаюсь получить щелчок плитки, чтобы сделать быстрый переход/переход на рост, так что у пользователя есть некоторая обратная связь с плиткой. Я нашел это легко сделать с анимацией CSS3, но хотел бы использовать альтернативу jQuery, поэтому он работает в IE8/9.
Эффект jQueryUI ('scale') кажется хорошим вариантом. Это выглядело бы лучше, так как плитки имеют значительный текстовый контент, и просто использование анимации() для width/height/top/bottom не будет масштабировать этот контент, а просто сквозит его вместе.
У меня есть образец, который работает, за исключением того, что щелкнутая плитка перепрыгивает между усадкой и фазой роста. Ищете предложения о том, как заставить плитку расти без малого прыжка.
Вот мой рабочий образец (жаль нет jsFiddle - это не кажется, не работает там):
div
{
margin: 0px;
background: green;
border: 10px solid black;
color: white;
width: 250px;
height: 250px;
}
body
{
margin: 20px;
}
$(document).ready(function() {
$("div").click(function() {
$(this).effect("scale", {percent: 90, origin: ['middle','center']}, 125,
function() {
$(this).effect("scale", {percent: 111, origin: ['middle','center']}, 125);
});
});
});
<div><h1>hi</h1><p>blah</p></div>
Заглянув jQueryUI Я предполагаю, что-то происходит с оберточной DIV применяется, но это немного выше меня. Какие-либо предложения?
Вот в jsFiddle для моего CSS3 эффекта, который показывает желаемый вид: http://jsfiddle.net/dex3703/n2RJs/
Спасибо!
Вы также можете сделать это без JS, используя свои плитки, используя css: active style. Используйте этот «.tinytile: active» вместо «.press». –