WEBカテゴリーの記事一覧

jquery.qrcode.js を使用して生成したQRコードをPNG画像として保存する

2019-03-31 23:50
WEB

jquery.qrcode.jsとは

jquery.qrcode.js

http://jeromeetienne.github.io/jquery-qrcode/

  • QRコードを生成するjQueryプラグイン
  • 画像は生成されず、tableタグまたはcanvasタグで描画することができる。
  • ソースはGitHubで公開されている。

使用手順

  1. GitHubから jquery.qrcode.min.js をダウンロードし、jQuery本体よりあとで読み込む
  2. HTML側に描画スペースを用意
  3. 用意した要素に対してjQueryスクリプトを記述
Read More

YouTubeのサムネイル画像をクリックしたら埋め込みiframeを読み込むjQuery

2019-02-19 15:52
WEB

やりたいこと

  • 余計なデータ通信を発生させないために、YouTube動画のサムネイルをタップ・クリックしたときにだけ、埋め込み動画のiframeを読み込ませる。
  • 16:9のレスポンシブ対応をする。
  • サムネイル画像と埋め込みiframeで表示位置がズレないようにする。

サンプル

用意するもの

  • 埋め込みたいYouTube動画のID
    • 再生ページのURLのパラメータにある文字列を控える
 https://www.youtube.com/watch?v=【動画ID】

ソース

HTML

<div class="embed-responsive" id="hoge">
	<a href="#">
		<img src="http://i.ytimg.com/vi/【動画ID】/maxresdefault.jpg" alt="">
	</a>
</div>
  • クリック後は以下のようなソースになるようにする。
<div class="embed-responsive" id="hoge">
	<iframe src="https://www.youtube.com/embed/【動画ID】?autoplay=1&rel=0&controls=0"></iframe>
</div>

javascript

  • jQueryのライブラリ読み込み後に以下を記述。
    • クリックされたaタグの親要素の中身をまるごと書き換えるという処理。
$(function(){
	$('#hoge a').on('click' , function(e){
		e.preventDefault();//リンクの停止
		$(this).parent().html('<iframe src="https://www.youtube.com/embed/【動画ID】?autoplay=1&rel=0&controls=0"></iframe>');
	});
});
  • 埋め込みのオプションを指定する場合は、動画IDの後にパラメータを付与。
    • クリックしたらで自動再生:autoplay=1
      • これは入れておくのがおすすめ。
      • 入れないと、サムネタップ→再生ボタンタップで2回閲覧者に行動させることになる。
      • 【追記】YouTubeブラウザの仕様上、スマホだと自動再生しない。追って調べます。
    • 再生終了後に関連動画を表示しない:rel=0
    • コントローラーを表示しない:controls=0
  • パラメータは、1つめは「?」で、2つめ以降は「&」でつなげる。

CSS

  • サムネイルと埋め込み動画を16:9比率のままレスポンシブ対応させる
  • アスペクト比を変えたい場合は、 .embed-responsive の padding-top を変更する。
    • 例:16:9の場合、100/16×9=56.25なので56%。4:3の場合、100/4×3=75なので75%、という考えかた。
.embed-responsive{
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
	padding-top: 56%;
	margin-bottom: 1em;
}
.embed-responsive iframe,
.embed-responsive img{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

追記

  • 2019-02-23:ソース一部修正しました。

EWWW Image Optimizerを有効化するとエラーが出るときの対処法

症状

  • 管理画面 > プラグイン から「EWWW Image Optimizer」を有効化するとエラーがでる

EWWW Image Optimizerを有効化するとエラーが出る

  • ツールフォルダが作れない

EWWW Image Optimizer could not create the tool folder: /home/homepage/public_html/notes/wp-content/ewww/. Please adjust permissions or create the folder.

  • 使用するプログラムがインストールされていない

EWWW Image Optimizer uses jpegtran, optipng, pngout, pngquant, gifsicle, and cwebp. You are missing: jpegtran, optipng, gifsicle. Please install via the Settings Page or the Installation Instructions.

Read More