jQuery UI explode effect
Как заставить эту дичь работать правильно?
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>explode demo</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.12.4.js"></script>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<p>Click anywhere to toggle the box.</p>
<div id="toggle">
<div style="width: 100px; height: 100px; background: #ccc"></div>
</div>
<script>
$( document ).click(function() {
$( "#toggle" ).toggle( "explode" );
});
</script>
</body>
</html>
Суть в том, что при если сделать такой html: <div id="toggle" style="width: 100px; height: 100px; background: #ccc"></div> то всё работает нормально, а вот если обернуть в другой блок (как в моём примере), то скрипт работает неправильно. |
Diphenyl Oxalate,
если у блока размеры со страницу какой анимации вы хотите? ... как вариант $( "#toggle >" ) |
Там ещё есть проблема, сдвиг при помощи margin ломает эффект.
margin: 200px (вообще ничего не видно)
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>explode demo</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.12.4.js"></script>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<p>Click anywhere to toggle the box.</p>
<div id="toggle" style="margin: 200px; width: 100px; height: 100px; background: #ccc"></div>
<script>
$( document ).click(function() {
$( "#toggle" ).toggle( "explode" );
});
</script>
</body>
</html>
margin: 50px (ячейки сильно сдвинуты)
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>explode demo</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.12.4.js"></script>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<p>Click anywhere to toggle the box.</p>
<div id="toggle" style="margin: 50px; width: 100px; height: 100px; background: #ccc"></div>
<script>
$( document ).click(function() {
$( "#toggle" ).toggle( "explode" );
});
</script>
</body>
</html>
|
Diphenyl Oxalate,
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>explode demo</title>
<style type="text/css">
body{
position: relative;
}
#toggle{
margin: 50px; width: 100px; height: 100px; background: #ccc; position: absolute;
}
.ui-effects-explode #toggle{
margin: 0;
}
.ui-effects-explode{
margin: -20px -8px;
}
</style>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.12.4.js"></script>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<p>Click anywhere to toggle the box.</p>
<div id="toggle" ></div>
<script>
$( document ).click(function() {
$( "#toggle" ).toggle( "explode");
});
</script>
</body>
</html>
|
| Часовой пояс GMT +3, время: 23:34. |