勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

jQueryでコンテンツのスライド

   2014/05/19  jQuery

jQueryもしくはJavaScriptでリンクを押すと
右から左にコンテンツをスライドさせたかった。

どうしたもんかなーと考えていたらデザイナーさんから、
こういった案はどうか? と貰ったのでメモ。

■ソース
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transtional//EN" "http://www.w3c.org/TR/html4/loose.dtd">
<base href="http://aaa.com/" target="_self">
<meta http-equiv="content-type" content="text/html"/>
<meta cherset = "UTF-8">
<html lang="ja">
<head>
<title>タイトル</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
var window_width = -$(window).width();
function nextAdvance (num) {
$('.page' + num).css({'display':'none'});
    $('.page' + (num + 1))
        .css({'display':'inline-block', 'position':'absolute', 'top':0, 'right':window_width, 'opacity':1})
        .animate({'right': 0, 'left' : 0}, "hight");
}
</script>
</head>
<body>
<section class="page page1" style="top:0;left:0;right:0;position: absolute;">
aaaaa
<a href="javascript:;" class="btn1" onClick="return nextAdvance(1);" id="btn1">次へ進む</a>
</section>
<section class="page page2" style="display:none;">
bbb
<a href="javascript:;" class="btn2" onClick="return nextAdvance(2);" id="btn2">次へ進む</a>
</section>
<section class="page page3" style="display:none;">
ccc
</section>
</html>

■その他
縦長にコンテンツを作っておいて、不要なものはdisplay:none;で
見えなくしておく。

スライドさせる場合は見えているものを非表示にして、
見せたいものを表示した上で、一番右に配置する。

animateでスライドさせる、という仕組みみたい。

 - jQuery

  関連記事

タブアンダー広告をjQueryで再現する方法
タブアンダー広告をjQueryで再現する方法

サイト内のリンクをクリックすると、新しいタブもしくはウィンドウで開く広告をちょい ...

jQueryのanimate()でページスクロール後に他の処理を実行させる方法
jQueryのanimate()でページスクロール後に他の処理を実行させる方法

jQueryのanimate()でページスクロール後に特定の要素を非表示にしたい ...

フォームの入力・選択内容を自動保存してくれる「Garlicjs」プラグインの利用方法
フォームの入力・選択内容を自動保存してくれる「Garlicjs」プラグインの利用方法

お問い合わせページ等、フォームを設置したページで入力・選択した内容を保存したい。 ...

jQueryからAjax経由でPHPにリクエストしCookieを操作する方法
jQueryからAjax経由でPHPにリクエストしCookieを操作する方法

先日PHPでCookie保存時にHttpOnly / Secure属性を設定する ...

jQueryのloadメソッドでファイル(ページ)を呼び出す
jQueryのloadメソッドでファイル(ページ)を呼び出す

サイト内でヘッダーやフッター等共通のパーツはそれぞれ別ファイルに分けてPHPのi ...