質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.59%

フリーのプログラムがうまく動いてくれません。

解決済

回答 2

投稿

  • 評価
  • クリップ 2
  • VIEW 2,133

score 15

前提・実現したいこと

最近JSを取り入れたプログラムを使用したサイトを作り始めました。
フリー配布のカードデザインを画像や色を少し変更しサイトへ張り付けたところ
うまく機能しませんでした。JSをきちんと読み込んでいないのかなあとおもいHTMLに直接記述したのですがだめでした。
「codepen」にのっているプログラムを、どこかにコピペするとかではなくそのまま触り自分のサイト用に改良し(この時点のcodepenプレビューではうまく動作していました)そのままサイトのhtml/css/jsの場所に入れ確認したら動作していませんでした。
わかりにくい文章かもしれませんが何か原因がわかる方、確認するべき場所など教えてください。

発生している問題・エラーメッセージ

エラーメッセージ

HTML

<div class="shop-card">
  <div class="title">
    Nike Metcon 2
  </div>
  <div class="desc">
    Men's training shoe
  </div>
  <div class="slider">
    <figure data-color="#8db7ce, #8db7ce">
      <img src="https://www.rakuten.ne.jp/gold/ryobu/fuzita/page/top/case/2.png" >
    </figure>
    <figure data-color="#deb9bc, #deb9bc">
      <img src="https://www.rakuten.ne.jp/gold/ryobu/fuzita/page/top/case/3.png" />
    </figure>
    <figure data-color="#8589a7, #8589a7">
      <img src="https://www.rakuten.ne.jp/gold/ryobu/fuzita/page/top/case/4.png" />
    </figure>
    <figure data-color="#2d798c, #2d798c">
      <img src="https://www.rakuten.ne.jp/gold/ryobu/fuzita/page/top/case/9.png">
    </figure>
    <figure data-color="#3f3f3f, #3f3f3f">
      <img src="https://www.rakuten.ne.jp/gold/ryobu/fuzita/page/top/case/8.png" >
    </figure>

  </div>

  <div class="cta">
    <div class="price">¥1,280-</div>
    <a href=""><button class="btn">商品ページへ<span class="bg"></span></button></a>
  </div>
</div>
<div class="bg"></div>

CSS

/*--------------------
Mixins
---------------------*/
@mixin center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


/*--------------------
Body
---------------------*/
*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
html {
  height: 50%;
  font-family: 'Open Sans Condensed', sans-serif;
}

body {
}


/*--------------------
Shop Card
---------------------*/

.shop-card {
  @include center;
  width: 350px;
  background: #f5f5f5;
  box-shadow: 0 10px 20px rgba(0,0,0,.3);
  overflow: hidden;
  border-radius: 5px;
  padding: 25px;
  text-align: center;
  z-index: 2;

  figure {
    margin: 0;
    padding: 0;
    overflow: hidden;
    outline: none!important;

    & img {
      margin: 0px 0 0px;
      width: 100%;
    }
  }

  .title {
    font-weight: 900;
    text-transform: uppercase;
    font-size: 30px;
    color: #23211f;
    margin-bottom: 5px;
  }

  .desc {
    font-size: 17px;
    opacity: .8;
    margin-bottom: 3px;
  }

  .cta {
    padding: 20px 20px 5px;

    &::after {
      content: '';
      display: table;
      clear: both;
    }
  }

  .price {
    float: left;
    color: #FF3100;
    font-size: 22px;
    font-weight: 900;
    padding-top: 2px;
    transition: color .3s ease-in-out;
    margin-top: 4px;
  }

  .btn {
    position: relative;
    z-index: 1;
    float: right;
    display: inline-block;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    color: #FF3100;
    padding: 12px 18px;
    cursor: pointer;
    transition: all .3s ease-in-out;
    line-height: .95;
    border: none;
    background: none;
    outline: none;
    border: 1px solid #FF3100;
    border-radius: 20px;
    overflow: hidden;

    & .bg {
      width: 101%;
      height: 101%;
      display: block!important;
      z-index: -1;
      opacity: 0;
      transition: all .3s ease-in-out;
      background: linear-gradient(135deg, #a61322, #d33f34);
    }

    &:hover {
      color: #fff!important;
      border: 1px solid transparent!important;

      & .bg {
        opacity: 1;
      }
    }

  }

}


/*--------------------
Slick Dots
---------------------*/
.slick-dots {
  bottom: -30px;

  a {
    position: relative;
    display: block;
    width: 16px;
    height: 16px;
  }

  span {
    @include center;
    width: 6px;
    height: 6px;
    border-radius: 50%;
  }

  circle {
    fill: none;
    stroke-width: 1;
    stroke-linecap: round;
    stroke-dasharray: 39 39;
    stroke-dashoffset: 39;
    transition: all .9s ease-in-out;
    transition: stroke-dashoffset 0.5s;
  }

  .slick-active circle {
    stroke-dashoffset: 0;
  }
}


/*--------------------
Background
--------------------*/
.bg {
  @include center;
  width: 100%;
  height: 100%;
  background: linear-gradient(15deg, #d33f34 50%, #a61322 50.1%);
  z-index: 1;
  display: none;
}


.the-most {
  position: fixed;
  z-index: 1;
  bottom: 0;
  left: 0;
  width: 50vw;
  max-width: 200px;
  padding: 10px;

  img {
    max-width: 100%;
  }
}

JS

function background(c1, c2) {
  return {

  }
}

function changeBg(c1, c2) {
  $('div.bg').css(background(c1, c2)).fadeIn(0, function() {
    $('.bg').hide();
  })
  $('span.bg').css({
  });
}

$slider = $('.slider');

$slider.slick({
  arrows: false,
  dots: true,
  infinite: true,
  speed: 600,
  fade: true,
  focusOnSelect: true,
  customPaging: function(slider, i) {
    var color = $(slider.$slides[i]).data('color').split(',')[1];
    return '<a><svg width="100%" height="100%" viewBox="0 0 16 16"><circle cx="8" cy="8" r="6.215" stroke="' + color + '"></circle></svg><span style="background:' + color + '"></span></a>';
  }
}).on('beforeChange', function(event, slick, currentSlide, nextSlide) {
  colors = $('figure', $slider).eq(nextSlide).data('color').split(',');
  color1 = colors[0];
  color2 = colors[1];
  $('.price, .btn').css({
    color: color1
  });
  changeBg(color1, color2);
  $('.btn').css({
    borderColor: color2
  });
});

試したこと

JSをHTML内に直接記述

補足情報(FW/ツールのバージョンなど)

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • aKusano

    2019/04/24 16:24

    HTMLを表示させたときに裏でどんなエラーが出てるか分かると適切な回答がつきやすくなりますので、Chrome等のデベロッパーツールでコンソールを確認し、出力されているエラーをキャプチャ取って貼るといいと思います。

    キャンセル

  • ryobu

    2019/04/24 17:00

    aKusano様
    ありがとうございます!まだ不慣れなため教えて頂けて助かります。
    エラーのキャプチャというのは問題かと思われる部分でしょうか?それとも何かエラーと表示されている部分があるということでしょうか?

    キャンセル

  • aKusano

    2019/04/24 17:09

    JS関連の不具合は、ブラウザがエラーを吐いているのかどうか、
    吐いているとしたらどんな内容なのか?を確認し、
    修正する度にエラー内容がどう変化するか/しないかを確認する作業が必要となります。
    これを「デバッグ」と言います。
    Chromeなら画面上で右クリックして「検証」を選ぶとデベロッパーツールが表示されますので、
    「console」タブをクリックして何か赤字で出てないか確認してみると良いです。

    キャンセル

回答 2

checkベストアンサー

+3

codepenのURLを拝見いたしましたが、その記載をそのまま貼り付けただけでは動きませんね。

SCSSとは、CSSのメタ言語と呼ばれるもので、
CSSを効率的かつわかりやすく記載することができるものです。
よって、このSCSSをそのままCSSとして使用することはできず、
CSSにコンパイル(変換)する必要があります。
codepenに、コンパイル後のCSSを表示する方法があるはずです。

よって、下記をご確認ください。

  1. SCSSのコンパイル後のCSSを使用する
  2. 自身で作成したHTML上でjQueryを読み込んでいるかを確認する(codepenは、自動でjQueryを読み込んでいるようなので、自身のHTMLでは、改め、自身で読み込みを設定する必要がある)

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/04/24 14:07

    必要な.jsが沢山あるのですね。知りませんでした、ありがとうございます。
    並び替えもおこなってみましたがやはりなぜか動作してくれません。ほかにも読み込むファイルがあるということなのでしょうか…

    キャンセル

  • 2019/04/26 15:13

    かもしれないです。
    JSなどがファイルが分かれている場合、
    必要なものを全て読み込まないと動きません。
    wtokunoさんのおっしゃる通りにしてダウンロードしたファイルを使ってもだめでしょうか?

    キャンセル

  • 2019/04/26 16:55

    wtokunoさんが教えてくださったダウンロードしたファイルを使用しても動作しませんでした…
    親身になってお力になってくださいましたおかげで無事解決したのですが、最終的な問題はjqueryの記述ルールが間違っていたことによるものでした。お騒がせ致しました…
    miyabi_takatsuk様から教えて頂いたプラグインも質問するときには抜けておりましたので皆様のおかげです。とても助かりました、本当にありがとうございました!

    キャンセル

+3

codepenの右下のとこから Export => Export .zip

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/04/24 13:23

    ありがとうございます!いつもコピペしてたんですが.zip保存があったのですね。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.59%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る