iframe型ブログパーツについて
タイトル通り、iframe型のブログパーツを使用しているのですが、このブログパーツのHTML元から<body>~</body>だけ読み込み、<head>~</head>部分は自分で記述し出力ということはできませんでしょうか?
分かりづらい質問で本当に申し訳ないのですが、
ヘッダ部分にブログパーツと自分のブログの背景を同じ配色にするためのスタイルを設定したいのです。また<link>タグの挿入も考えております。
以下のコードを使えばできると思ったのですが、firefoxで動かない上に、取得したHTMLを表示させると文字コードだけになりました。
できれば詳細を、できなければ諦めますのでご教授のほどよろしくお願いします。
回答(1)
1.

*
固定的なものなら、読み込まれる内容を調べて、自サイトで再構成できるかもしれませんが、一般にはムリと考えて良いと思います。
*
XMLHTTPリクエストによる読込は、
XML整形式(HTMLは、XML整形式でないのがほとんどです)でなければDOMとして読込できない。
文字データとして読み込む場合でも文字コードがUTF-8(Unicode)でなければならないなど色々と制約があります。
(リンク先では文字コードのチェックをちゃんとしているようですが・)
あと、IEでは、許可で読めたと思いましたけど、同じように他サイトは、読込できなかったと思います。
*
リンク先で
XMLHTTPリクエストとして使っているのが
new ActiveXObject("Microsoft.XMLHTTP");
ですけど、これは、IE系で有効な記述で
Firefox では、
new XMLHttpRequest()
のようにする必要があります。
(他にも色々必要ですが)
ご回答ありがとうございます。
諦めきれず色々と弄ってみたのですが、BLUEPIXY様の仰るとおり不可能でした。
わざわざご丁寧に細部の説明までしてくださり、ありがとうございました。
コメント(2)
BLUEPIXY様
ご丁寧な説明感謝致します。
>iframe を使って読込は、同一ドメインでないと編集できません。
なるほど、制約があったとは知りませんでした…。
取得先のHTMLは更新タイプのようでしたので、時間指定で読込めるスクリプトを書いておりました。
>XMLHTTPリクエストによる読込
変換作業を念頭に置き色々調べていたところ、下記URL内のBLUEPIXY様の回答がハイライトされました。
参考にしようと熟考を重ねたのですが、直後上記サイトを見つけました(´・ω・`)
http://oshiete1.goo.ne.jp/qa2317512.html
>IEでは、許可で読めた
object.documentElement.outerHTMLプロパティのことでしょうか?
iframeを使っての読込はできないとのことですが、
iframeの代わりにobjectタグで外部HTMLを読込むなら、希望通りに表示させることは可能でしょうか?
#1>object.documentElement.outerHTMLプロパティのことでしょうか?
違います。
IEでは、違うサイトの読込をしようとした時には、「他のサイトを読み込もうとしているが、本当に読み込みたいのか?」と聞いてきます。(つまり、第三者のスクリプトによって勝手に想定外の操作がされているのではないか?というわけです。Firefox では、単にそれは許可されていないといって読込されません)
#1>iframeを使っての読込はできないとのことですが
読込自体はできますが、他サイトの場合、スクリプトからいじれません。(編集だけでなく、読み出しも)
#1>objectタグで外部HTMLを読込むなら、希望通りに表示させることは可能でしょうか?
やってみたことはありませんが、できたとしても、おそらく iframe と同様だと思います。



