A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは
課題とのことなので、ヒントのみですが・・・
「リンク先へのページの訪問回数、前回訪問日時」はリンク元のページを辿った場合をカウントするのか、それとも別のルートを辿った場合も含めてカウントするかによって考え方が変わりますね。
前者であれば、リンク元のページで完結することが可能で、そのページ内でリンクがクリックされたら、時間や回数をカウントするようにしておけばよいことはわかりますよね。
一つのページ内で(複数の)リンクがクリックされるのを監視するには、以下のような方法で可能です。
document.addEventListener("click", function(evt){
var t = evt.target;
if(t.nodeName == "A"){
//リンクがクリックされた場合の処理
alert("Clicked! href=" + t.href);
}
}, false);
後者の場合は、記録を保存するのはそれぞれのページで行い、表示は「元ページ」ということになりますね。
こちらの場合は、各ページに保存を行うスクリプトが必要になりますので、スクリプトを外部ファイル化しておいて、各ページで読み込むような方法が考えられます。
読み出すのが固定のページであるなら、その部分は上の外部ファイルとは別に作成しておくのがよいでしょう。
いずれの場合でも、(複数あると思われる)ページを区別できるように、ページ毎の符号や番号を設けておいて、訪問回数などを区別できるようにしておく必要がありますね。
>他のページで保存された情報を引用する方法がわかりません
Web Storageは同一ドメイン内では共通して利用が可能なようです。
https://developer.mozilla.org/en-US/docs/Web/API …
例えば以下のスクリプトは、記録されている内容をコンソール出力するものですので、ディレクトリを変えて試してみてください。
(ただしhttpアクセス時です。ローカルでfileアクセスなどする場合は同一ディレクトリのみのようです(未検証))
var ls = localStorage;
for(var key in ls){
if (ls.hasOwnProperty(key)) console.log(key + " / " + ls[key]);
}
ところで、『訪問回数』と一口に言っても、考え方はいろいろあると思います。
1)ページを表示すればカウントする
2)1回/日を限度としてカウントする
3)最後の表示から一定時間経過していたらカウントする
などなど。
なぜこのようなことを考えるかというと、1)のような方法だと、リロードしたりページ間を行き来するだけでカウントが増加してしまうので、本当に『訪問回数』を数えていることになるのだろうかという疑問があるからです。
まとまりがありませんが、考える上でのヒントになれば・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで訪問回数を表示するカウンタを作成したい 3 2023/05/27 07:09
- ドメイン・サーバー・クラウドサービス 自作サイトをサーバーにアップロードしたのですが… 2 2022/11/08 18:12
- au(KDDI) 特定の画面を見るとスマホが固まります ご覧頂き有難うございます。 特定のページを見るとスマホが固まり 1 2023/08/21 19:29
- Excel(エクセル) Excelから複数のWordファイルを操作する方法について教えて頂きたい。 やりたいことは、複数のW 2 2022/07/26 20:11
- PHP $_SESSIONに渡した後はそのまま使っても問題ありませんか? 3 2022/11/08 22:17
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- WordPress(ワードプレス) ワードプレスで、投稿一覧ページにタグを表示する方法 投稿につけたタグを、記事一覧ページにもカテゴリと 1 2023/05/10 21:41
- WordPress(ワードプレス) wordpressでphpを読み込みたい 1 2022/10/30 23:40
- その他(プログラミング・Web制作) パイソンでのプログラミングについて 3 2022/08/11 20:31
- 高校受験 【受験まで残り3日】誰かアドバイス下さい。もう参考書を全て終わらせる時間が無いです。 私は理社の点数 2 2023/02/11 18:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
指定時間になったら、WEBサイト...
-
フォームが空欄の時にフォーム...
-
スマホ上で、左右スワイプで次...
-
プログラムがうまく動きません...
-
Colorboxがうまく設置できません
-
画面遷移を行わずに同一ページ...
-
初心者です。gulpでコンパイル...
-
console.logがどうしても2つ機...
-
Googleフォームで選択肢に応じ...
-
イラストレーター、縦中横のシ...
-
【GAS】WEBアプリでハイパーリ...
-
特定の文字列を複数抜き出した...
-
sessionStorageを調べています。
-
読み込んだQRコードをフォーム...
-
jsで質問です。 ボタンが二つ存...
-
階層別の組織図の自動作成について
-
コードレビューをお願いします。
-
セレクトボックスで配列を呼び...
-
HTMLタグに複数のクラスを設定...
-
コードレビューをお願いします。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Googleフォームの回答リンクに...
-
スマホでボタンがhoverの状態か...
-
個人hp 外部ページへのリンク...
-
サーチコンソールで被リンクを...
-
画面のどこかをクリックすると
-
HTMLのリンクの色をクリックす...
-
ページ内リンクでアコーディオ...
-
excel VBA でjava のボタンを押...
-
被リンクを無料で増やすための...
-
戻るボタンの作成
-
a:hoverで設定した内容をクリッ...
-
ブラウザの戻るを押しても戻ら...
-
SEO対策に被リンクは必要?
-
ボタンにリンクをかけたら、ボ...
-
検索結果で、トップページより...
-
ブラウザーの戻るボタンを押し...
-
被リンクZからメールが来ました
-
リロードした時にページの一番...
-
サイト構築の方法を教えてください
-
インフレーム内のラベルに飛び...
おすすめ情報