• ベストアンサー

クッキーの記述を最短に

こんにちは。 今日で2度目になってしまうのですが、失礼します。 ホームページのCSSをjavascriptで変更、その設定をクッキーを使って保存しておきたくて調べたのですが、どのホームページも記述が長く、コンパクトにしているところがなかなかありません。 そこで、なるべく短くクッキーを利用する方法を教えていただきたいのです。 条件は以下2点です。 ・初期設定はbase.cssにしたい ・記録したいのは、CSSの相対パスただ1つ お手数をかけますが、よろしくお願いします。

noname#77303
noname#77303

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

var pStr = 'CSSの相対パス'; var t = new Date(); t.setTime(t.getTime() + 7 * 1000 * 60 * 60 * 24); //有効1週間 document.cookie = 'path=' + escape(pStr) + ';expires=' + t.toGMTString(); (↑)程度でも(書き込みのみ)長いとおっしゃるのでしたら、こんなのを利用されてはいかが?(一応、1~2行で読み書きができるみたい・・・)  http://phpspot.org/blog/archives/2006/11/javascriptcooki.html

noname#77303
質問者

お礼

回答ありがとうございます。 4行で記録が出来るとは大変短いですね。 僕が調べたものよりうんと短いです。 出来れば、これに加えて呼び出す方法を教えていただけませんか? クッキー記録時は記録しておいたCSSを、それ以外は初期設定のCSSを呼び出すようにしたいのですが・・・。

その他の回答 (1)

noname#108740
noname#108740
回答No.2

この関数でどうでしょう? ---- function setCookie(name, value, expires) { var d = new Date(); d.setDate(d.getDate() + expires * 1000 * 60 * 60 * 24); var cookie = encodeURIComponent(name) + "=" + encodeURIComponent(value); cookie += ";expires=" + d.toGMTString(); document.cookie = cookie; } function getCookie(name) { var cookies = document.cookie.split("; "); for (var i = 0; i < cookies.length; i++) { var cookie = cookies[i].split("=", 2); if (decodeURIComponent(cookie[0]) == name) { return decodeURIComponent(cookie[1]); } } }

関連するQ&A

  • /から始まるパスについて

    たびたびお世話になっております。 /から始まるパスというのは、サーバにあげないと読みにいきませんよね。 でもサーバにあげても読み込みしません。。。javascriptでスタイルシートの振り分けをしているのですが、その際、JSファイルに <link rel="stylesheet" href="/cmn_css/win.css" type="text/css"> という設定をしてあります。 各ページは、 <script language="JavaScript" type="text/javascript" src="/cmn_js/prart.js"></script> という記述でJSファイルを読みこみしています。ですが、読み込んでくれません。。。相対パスで記述するとスタイルシートが反映されます。 どうしてでしょうか。サーバ側で何か設定が必要なのでしょうか。 すみませんが、よろしくお願いします!

  • javascriptでクッキードメイン

    はじめましてお願いします。ただ今javascriptでクッキーの中にドメインやパスを作れるか模索中なんです。 本やホームページを見ると出来るみたいなのですが、 タグのサンプルが掲載されていないのでいまいち 独学ではスクリプトエラーが起きてしまい困っています。 どうかわかる方宜しくお願いします。

  • HTML記述法:HTTPSページ内のHTTPリンク

    HTTPSページのHTTPリンクを相対パスで記述する方法はあるのでしょうか? ホームページ作成をしています。 別ページへのリンクは、 基本相対パス(../imageなど)で記述されており、 ローカル環境でも動作を検証できます。 ただし、HTTPSページへのリンクは絶対パスで記述しています。 また、HTTPSページ内のHTTPページへのリンクは、 相対パスだとHTTPSでアクセスしてしまうため、 HTTPページへの絶対パスで記述しています。 そのため、HTTPSページをローカル環境で開いた以降の検証ができません。 HTTPSページ内のHTTPページへのリンクを、 相対パスで記述する方法はあるのでしょうか? どうぞよろしくお願い致します。

    • ベストアンサー
    • HTML
  • 外部ファイルを読み込ませるための記述方法を教えてください!

    (1)index.html (2)「index.html」以降のページのフォルダ(の中にhtml) (3)css.js (4)cssファイル を同じ階層に置いています。 htmlには<SCRIPT LANGUAGE="javascript"src="css.js"></SCRIPT> と書かれており、css.jsファイルからcssファイルを読み込み htmlにcssが適用されてるように設定されています。 この階層のhtmlにはcssが反映されるのですが (2)のフォルダの中のhtmlにとってはcss.jsの階層は一つ上になるのですが、 <SCRIPT LANGUAGE="javascript"src="css.js"></SCRIPT> と書いてもcssが反映されません。 srcの指定を正しくするにはどのように記述したらいいのでしょうか? <SCRIPT LANGUAGE="javascript"src="../css.js"></SCRIPT> と記述してもダメでした。 Javascriptの言語がほとんどわからず困ってしまっています。 大急ぎで知りたいのですが、わかる方いらっしゃいましたら 教えてくださると大変助かります。 どうかよろしくお願い致します。

  • CSS, Javascript読み込めない

    Windows10のノートパソコンを使用しています。各ブラウザの設定は初期設定のままです。 ローカル(PC内)でHTMLファイルにCSSファイル1つとJavascriptファイル1つを読み込ませ、Google Chrome, Microsoft Edge, Internet Explorerで開いたのですが、どのブラウザでもCSSもJavascriptも認識されていません。 ファイル名とそのパスやソースコードを確認しましたが、記述に間違いはありません。htmlファイルと同じ階層にCSSファイルとJavascriptファイルを入れています。 Google Chromeの検証機能で確認するとCSSとJavascriptのファイルが見つかりませんとなっています。 ネットで調べましたが原因は不明です。以上のことから、CSS、Javascriptが読み込めない原因として考えられることを教えて下さい。

    • ベストアンサー
    • HTML
  • Ajaxで外部サイトの取り込み

    Ajax非同期通信、例えばJQueryの以下の様にyour-web-siteをページ内に取り込んだ場合、cssやjavascriptのパスが相対パスで指定されているのが原因で正しく表示されない場合があります。通常のhtmlで静的に取り込む場合は<iframe>で取り込むか、<base href="...">などを用いて相対パスを絶対パスに変換するのですが、Ajaxで動的に取り込む場合のうまい方法がわかりません。 よいアイデアや方法があればご教示ください。 --- javascript---- $(function (){ $("#a").load("http://your-web-site/"); }); ---- html -------- <div id="a"></div> ------------------

  • 記述されているjavascriptがどのようなものか知りたい

    お世話になります。 ホームページを作成するのにほとんどホームページビルダー を使っているのですがSEOとかが言われる前より作っておいた 古いベースのテンプレートを使っていて見直しのために ソースを見るとjavascriptがいくつか記述されているのですが 何年も前に作ったものなので何の為に動作しているかわからなく 必要なさそうな気もするので削除しようかと思っているのですが、 念のためこのスクリプトはどう動くかを知りたいと思いまして 投稿しました。 英語の翻訳のように調べられたり動作を検証できたり教えていただける サイトや書籍の物はないのでしょうか。

  • maqueeの記述方法について

    よろしくお願いします。 ホームページ上に、左から右に流れるようにマーキーを設定したいと思っており、html上に以下の記述をしました。 <maquee>ほげほげパソコン</maquee> 上記で文字は表示されましたが、htmlチエッカーで調べたところ、良い記述方法ではないという事が書かれていました。そこでcssで記述をしようと思いましたが、どのような記述をすれば良いのか分かりません ご指導の程よろしくお願いします。

    • ベストアンサー
    • HTML
  • クッキーの利用について

    CGIのプログラムで、複数の異なるURLのファイルからJavascriptを介してクッキーを利用する仕組みを考えています。 SetCookieでpath、domainの値を指定していますが、SetCookie後、発行したフォルダから他のフォルダに移動して再びsetCookieを行おうとすると、Cookieに正しく値が設定されないという現象が起こって困っております。 おそらくSetCookieの値の書き方の問題かと思いますが、どなたかおわかりになる方はいませんか?

  • 別サーバー同士でクッキーを有効にする方法

    ホームページで別サーバー同士をフレームで読み込むとプライバシーレポートの目のマークがつきます。 それからCGIはクッキーが残りません。 両方は関連していると思ったのですがブラウザでの設定の変更なしに クッキーを有効にしたり目のマークがでなくなるようにできないでしょうか?(デフォルトの「中」の状態で) 調べていくとP3Pやコンパクトレポートなどがでてきたのですが、どうすれば別サーバーどうしでもクッキーが有効になったりするのか難しすぎてわかりません。 上のことはCGIを設置するように個人がなんらかの設定をすればできるものでしょうか? もしできるのならやり方を教えてもらえないでしょうか。よろしくおねがいします。