Repro - Mobile Analytics for growth
English
アカウント登録 管理画面に戻る
  • 動作環境
  • 管理画面ガイド
    • アナリティクス
    • マーケティング
      • プッシュ通知
      • イベント起点プッシュ通知
      • アプリ内メッセージ
      • HTMLアプリ内メッセージ
      • Webメッセージ
      • カスタムメッセージ
      • カスタムJavaScript
        • カスタムJavaScriptとは?
        • 導入手順
          • 1.JavaScriptの編集機能を有効にする
          • 2.カスタムメッセージを作成する
          • 3.カスタムメッセージに動きをつける
          • 4.作成したカスタムメッセージを確認する
        • 実装例
          • 1.ページを50%スクロールしたら、メッセージを表示させる。
          • 2.メッセージの表示を5秒遅らせる
        • セキュリティに関するTips
          • Session cookieに関して
        • 効果測定に関する注意点
        • その他の注意点
          • カスタムJavaScriptを有効から無効に切り替えた場合の挙動について
      • カスタムメッセージで利用可能なHTMLタグ・属性
      • シルバーエッグレコメンドメッセージ
      • 閲覧人数表示
      • Webプッシュ通知
      • アプリ内パラメーター
      • オーディエンス
      • シナリオ(β)
      • 変数の挿入
      • Liquidによるパーソナライズ
      • インセンティブコード管理機能
      • メール(β)
      • ニュースフィード
    • データエクスポート
    • 設定
    • Booster利用ガイド
    • アカウント
    • その他
  • 開発ガイド
  • リリースノート
  • FAQ

カスタムJavaScript¶

カスタムJavaScriptとは?¶

カスタムメッセージ の機能を利用することで、Webサイトのイメージに合わせたWebメッセージの作成が可能です。

カスタムJavaScriptの機能を使うことで、例えばWebメッセージをフェードインさせたり、スクロール量に応じて表示するといったカスタムメッセージのみでは難しいよりリッチな表現が可能になります。

警告

  • 本機能を利用することで生じた一切の損失に関して、当社は責任を負いかねます。詳しくはRepro利用規約(https://repro.io/company/legal/term/)をご確認ください。
  • 機能の実装につきましては、 必ずHTML/CSS/JavaScriptの知識 を持った方が行うようにしてください。

導入手順¶

1.JavaScriptの編集機能を有効にする¶

管理画面の設定 > プロジェクト設定 > 機能設定からWebメッセージのJavaScript編集機能をONにしてください。

../../_images/activate_custom_js.ja.png

注釈

  • 管理画面の 「オーナー」権限をお持ちの方のみ が行うことができます

2.カスタムメッセージを作成する¶

カスタムメッセージ を参考にしてメッセージを作成してください。

3.カスタムメッセージに動きをつける¶

2.で作成したメッセージの編集画面のコンテンツでJavaScriptを選択してJavaScriptを編集をすることができます。

../../_images/custom_js_editor.ja.png

実装例に関しては、 こちら をご参照ください。

注釈

  • メッセージを表示するためには、必ず message.show(); を当該のスクリプト内で呼ぶ必要がございます。
  • data-repro--close 属性のついた要素が存在しないメッセージの場合、必ず当該のスクリプト内ののどこかで message.close() を実行してください。 message.close() が実行されない場合、メッセージを閉じることができません。
  • 当該のスクリプトは ローカルな関数スコープとして実行されます ので、ご注意ください。
  • 当該のスクリプトに対する トランスパイルの処理は行われません ので、ご注意ください。
  • JavaScriptとして記述する内容については一切の制限を行いませんが、jQueryなどのライブラリはロードしません。
  • JavaScriptエディター内のLinterは、JSHintを使用しています。

4.作成したカスタムメッセージを確認する¶

思った通りの動きを実現出来ているかをサイト内プレビューの機能を使って、確認することが出来ます。

../../_images/custom_js_preview.ja.png

注釈

  • サイト内プレビューとして表示されたメッセージはイベント/ユーザープロフィールや、効果測定に関わるデータは一切アップロードされません。

(例) 下記サンプルコード内の reproio("track", "【CV】click_view"); はサイト内プレビュー時は実行されず、「イベント設定」への反映も行われません。

window.addEventListener('click', (event) => {
    message.close();
    reproio("track", "【CV】click_view");
},true)
  • サイト内プレビューや公開時、カスタムJavaScriptで記述したJavaScriptでエラーが発生している場合は、ブラウザの検証ツールにエラーメッセージが表示されます。ご注意ください。

実装例¶

以下のスクリプトはあくまでサンプルになりますので、その旨ご了承の上ご利用ください。

1.ページを50%スクロールしたら、メッセージを表示させる。¶

var body = window.document.body;
var html = window.document.documentElement;
window.addEventListener('scroll', function onScroll() {
    var scrollTop = html.scrollTop || body.scrollTop;
    var pageHeight = Math.max.apply(null, [body.clientHeight, body.scrollHeight, html.scrollHeight, html.clientHeight]);
    var viewHeight = html.clientHeight || body.clientHeight;
    var scrollRate = ((scrollTop + viewHeight) / pageHeight) * 100;
    if (scrollRate > 50) {
        message.show();
        window.removeEventListener('scroll', onScroll);
    }
});

2.メッセージの表示を5秒遅らせる¶

window.setTimeout(function() {
    message.show();
}, 5000);

セキュリティに関するTips¶

Session cookieに関して¶

お客様のReproアカウントが乗っ取られた場合に、本機能はXSSのSINKとなる可能性がございます。そのような攻撃に備えて、Webサイト内でご利用されている session cookieにHttpOnly属性がついているか のご確認をお願い致します。

効果測定に関する注意点¶

  • コントロールグループを利用される場合、「コントロールグループと比較をする際の条件や基準」 を揃えるためにコントロールグループにも、その他のパターンと同様にJavaScriptを設定頂くことを推奨しております。

(例) ページを50%スクロールした際にメッセージを表示する施策について、その施策を行うこと自体の効果を測りたい

以下のように通常パターンでスクロール50%でメッセージを表示する場合、コントロールグループにもスクロール50%で計測するよう同様のJavaScriptを設定する

../../_images/custom_js_scroll.png
  • コントロールグループが0%の場合は、コントロールグループのタブを選択しても下記のように表示され、コンテンツの編集が行えません。
../../_images/custom_js_controll_group_zero.png

注釈

  • カスタムJavaScriptが有効になっていない場合は、JavaScriptの編集自体が行えませんのでご注意ください。
  • インプレッションに計上されるタイミングは、 message.show() が実行されたタイミングです。

(例) 下記サンプルコードの場合、メッセージの表示トリガーが発火してから5秒以内にユーザーがサイトを閉じた場合は「インプレッション」にカウントされません。

setTimeout(function() {
    message.show();
}, 5000);

その他の注意点¶

カスタムJavaScriptを有効から無効に切り替えた場合の挙動について¶

設定 > プロジェクト設定 > 機能設定から"WebメッセージのJavaScript編集機能"をONからOFFに変えた際は、カスタムJavaScriptを使ったWebメッセージの配信自体がなくなるわけではなく、Webメッセージの配信自体は行われ、カスタムJavaScriptを使って記述された振る舞いのみが無効 になります。当該のWebメッセージを停止したい場合は、メッセージ画面から停止してください。

  • « カスタムメッセージ
  • カスタムメッセージで利用可能なHTMLタグ・属性 »

About Us Careers Terms of Service Privacy Policy Cookie Policy

© 2022 Repro Inc.