【JavaScript】ボタンをクリックして要素を右側にスライドさせる方法

jQueryを使って要素を右側にスライドさせる方法をご紹介します。

最近の案件で使用しました。

デモ

See the Pen Untitled by 悠 (@qnmgqpdi-the-reactor) on CodePen.

コード

 <div class="demo">
    <div class="slide-btn"><span></span><span></span></div>
    <div class="demo__container">
      <p class="demo__container-txt">右上のボタンをクリック</p>
    </div>
  </div>
.demo {
  width: 80%;
  height: 132px;
  margin: 0 auto;
}

.demo__container {
  background-color: #025F82;
  height: 100px;
  border-radius: 10px;
  transition: 0.4s;
  transform: translateX(0);
  display: flex;
  align-items: center;
  justify-content: center;
}

.demo__container-txt {
  color: #FFFFFF;
  font-size: 16px;
}

.slide-btn {
  margin-left: auto;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #F5A623;
  position: relative;
  cursor: pointer;
}

/*ボタン内側*/
.slide-btn span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  height: 3px;
  border-radius: 2px;
  background: #FFFFFF;
  top: 8px;
  left: 8px;
  transform: translateY(6px) rotate(-45deg);
  width: 50%;
}

.slide-btn span:nth-of-type(2) {
  top: 20px;
  left: 8px;
  transform: translateY(-6px) rotate(45deg);
  width: 50%;
}

.slide-btn.hide span:nth-of-type(1) {
  top: 6px;
  left: 11px;
  transform: translateY(6px) rotate(135deg);
  width: 30%;
}

.slide-btn.hide span:nth-of-type(2) {
  top: 24px;
  left: 11px;
  transform: translateY(-6px) rotate(-135deg);
  width: 30%;
}

.hide + .demo__container {
  transform: translateX(200%);
}
  $(function(){
		$('.slide-btn').click(function(){
			$(this).toggleClass('hide');
		},
		function() {
			$(this).toggleClass('hide');
		});
  });

右側にスライドさせて表示させての繰り返し

オレンジ色のボタンをクリックすると要素が右側にスライドして「×」が「<」に変わります。

今度は「<」をクリックすると要素が右側からスライドしてきます。

要素の中に画像を入れたり、ボタンをハンバーガーメニューに変えたり、左側にスライドする仕様に変えたり色々なカスタムができますので試してみてください。

以上、ボタンをクリックして要素を右側にスライドさせる方法をご紹介しました。

最近の投稿