
お気に入り用のボタンを配置したのですが、IE7で機能しないという報告が来て困っております。
IEで動作させるシステムですので、addFavorite()で行っております。
<input id="btnBookMark" type="button" value="お気に入り登録" onclick="window.external.addFavorite('アドレス','タイトル')" />
過去ログでも同じような質問があったのですが、解決はしておりませんでした。
どなたか対処された方はおりますでしょうか?
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
#1, 2 です。
#2 で文字数制限の都合上、紹介できなかった参考URLを貼り付けておきます。
AddFavorite Method (external)
http://msdn.microsoft.com/en-us/library/ms535926 …
sidebar - MDC
https://developer.mozilla.org/ja/DOM/window.side …
「お気に入りに追加」「ブックマークに追加」ボタンのまとめ | JavaScript | 阿部辰也のブログ――人生はひまつぶし。
http://www.abe-tatsuya.com/web_prog/javascript/a …
No.2
- 回答日時:
#1 です。
以下、クロスブラウザ版。(Firefox3.6, Opera10.54, IE8 = OK / GoogleChrome5 = NG)
-----------
<script type="text/javascript"><!--
function initAddBookmark (doc) {
var a = doc.createElement('a'),
defined = ('undefined' !== typeof sidebar && 'addPanel' in sidebar) || ('undefined' !== typeof opera && 'undefined' !== typeof print) || ('object' === typeof external && 'AddFavorite' in external);
if (!defined) { return false; }
a.id = 'AddBookmark';
a.rel = 'sidebar';
a.href = doc.location.href;
a.title = doc.title;
a.appendChild(doc.createTextNode('add bookmark'));
doc.getElementById('AddBookmarkContainer').appendChild(a);
}
document./*@cc_on @if(@_jscript) attachEvent('on' + @else @*/addEventListener(/*@end @*/ 'click', function (event) {
var a = event.target || event.srcElement, errorMsg;
if ('undefined' === typeof a || !('tagName' in a) || a.tagName.toLowerCase() !== 'a' || a.id !== 'AddBookmark') { return false; }
if ('undefined' !== typeof sidebar && 'addPanel' in sidebar) { // for Gecko
sidebar.addPanel (a.title, a.href, '');
} else if ('undefined' !== typeof opera && 'undefined' !== typeof print) { // for Opera
return true;
} else if ('object' === typeof external && 'AddFavorite' in external) { // for IE
external.AddFavorite (a.href, a.title);
} else {
errorMsg = 'addFavorite function is undefined';
}
event.preventDefault ? event.preventDefault() : event.returnValue = false;
if (errorMsg) { throw new Error (errorMsg); }
},false);
//--></script>
</head>
<body onload="initAddBookmark (this.document);">
<div id="AddBookmarkContainer"></div>
-----------
Element.tagName.toLowerCase() を使用した理由は、以下の通り。
-----------
** HTML DOM と XHTML DOM を両立するベスト・プラクティクスは何ですか?
HTML と XHTML とで同等の DOM が生成されるよう考えられてはいるのですが、HTML DOM と XHTML DOM とでは動作に若干の違いがあります。
大文字・小文字の違いの認識 :
・できる限り、Element.tagName と Node.nodeName のテストは避けてください(または、テストの前に、toLowerCase() を使ってください)。
名前空間:
・要素を生成するための名前空間を指定するバージョンの利用:Document.createElementNS(ns, elementName)
--------
No.1
- 回答日時:
IE8 では問題なく動作しました。
addFavorite() ではないところで、エラーが起きている可能性はないでしょうか?
<p onclick="external.AddFavorite ('http://google.com/', 'Google')">お気に入りに追加 (IE専用メソッド)</p>
AddFavorite Method (external)
http://msdn.microsoft.com/en-us/library/ms535926 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「nullまたはオブジェクトでは...
-
HTML:Tableタグに対し、JavaScr...
-
ActiveXobjectが作成できない
-
<a>タグのテキストを取得
-
javascriptでスロットゲームを...
-
配列の大括弧と丸括弧はどう違う?
-
idを使わずにonclickで自身の要...
-
jspからjavascriptの変数引継ぎ
-
javascriptで複数キーワード検...
-
C#で、ContextMenuStripに動的...
-
Linux バイナリ実行できない "...
-
window.openでタイトル名の指定
-
VBAでIEのボタンを押してメッセ...
-
JavaScriptで日付を取得したいです
-
Boolean型配列中のTrueの有無を...
-
C#OpenCv V4にのエラーに関する...
-
JavaScriptとHTMLの課題です
-
IEでF12を押さないとjavascriptが…
-
Latexに関する質問です。
-
マウスでポイントすると説明を表示
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ActiveXobjectが作成できない
-
onchangeイベントを使ってspan...
-
innerHTML実行後のイベント
-
重複しないくじの作り方がわか...
-
javascript の 命令文の記述で...
-
<a>タグのテキストを取得
-
javascriptで自動計算フォーム...
-
マウスストーカーやクリックで...
-
任意の座標をクリックさせるには
-
javascriptの質問です
-
配列の大括弧と丸括弧はどう違う?
-
appendChildがieだとできない??
-
HTML:Tableタグに対し、JavaScr...
-
[初心者]javascriptのfor文でな...
-
javascriptを使ったページ内の...
-
「nullまたはオブジェクトでは...
-
JavaScriptによるundefined判定...
-
javascriptで編集可能不可能の...
-
【Tabキー】特定の範囲内だけで...
-
getElementsByClassについて
おすすめ情報