質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
ドメイン

ドメインとは本来、領域や範囲の意味を持ち、インターネット上では特定の部分領域を指します。ネットワークやコンピュータの識別に利用され、所得することでホームページを公開したり、メールアドレスを作成できます。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

1135閲覧

子の<head>内の情報をホームページに反映したい

rdt

総合スコア14

ドメイン

ドメインとは本来、領域や範囲の意味を持ち、インターネット上では特定の部分領域を指します。ネットワークやコンピュータの識別に利用され、所得することでホームページを公開したり、メールアドレスを作成できます。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/02/12 07:10

前提・実現したいこと

HTML初心者です。
ドメイン転送サービスを利用し、ホームページを公開しています。
以下に記載するファイルAファイルB1をそれぞれアップロードしていましたが、

今回、ホームページを更新し、
ファイルB1ファイルB2に変更する必要があります。

タイトルを「タイトル2」としたいため、ファイルB1を削除し、ファイルB2をアップロードしましたが、
インターネット上でホームページを閲覧すると タイトルが「タイトル1」と表示されます。

発生している問題

親であるファイルA<HEAD>内の記述が反映されているように思われますが、
ファイルAはアクセス不可能であるため、編集することができません。

サーバの契約先と連絡をしましたが、ファイルAの編集は不可能であるとのことです。
ファイルB2の記述のみを編集して、ファイルB2<head>内の情報を反映することはできませんでしょうか?

ファイルA(ドメイン転送サービス)(編集不可)

html

1<HTML> 2 3<HEAD> 4<TITLE>タイトル1</TITLE> 5</HEAD> 6 7<FRAMESET COLS="100%,*" BORDER=0 FRAMEBORDER=0 FRAMESPACING=0 NORESIZE> 8 <FRAME SRC=""http://○○" NAME="domaintransfer" > 9</FRAMESET> 10 11</HTML>

ファイルB1(○○サーバ内HTML)(編集可能)

html

1<!DOCTYPE html> 2<html> 3 4<head> 5 <title>タイトル1</title> 6</head> 7 8</html>

ファイルB2(○○サーバ内HTML)(編集可能)

html

1<!DOCTYPE html> 2<html> 3 4<head> 5 <title>タイトル2</title> 6</head> 7 8</html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

そもそも <frameset> <frame> は、HTML5 において 廃止 された機能ですので、現状で使うのは好ましくないのですが、それはさておき。

Web ブラウザはあくまでも大本の(<frameset> を持つ)HTML 内の <head> 内の <title> をタイトルとして扱います。(つまりファイルA<title>を使う)
元々もファイルB1 の <title> が効いていたのではないのです。

ですので望むような動作をさせることは、HTML の範疇ではできません。

JavaScript を使えて、かつ frameset を持つ親 HTML と frame の中の子 HTML が 同じドメイン であるなら、次の方法で変えることができます。

JavaScript

1// これはフレーム内の子 HTML の方に記述します 2window.parent.document.title = 'タイトル2';

違うドメインの場合は無理です。

投稿2020/02/12 07:57

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rdt

2020/02/13 03:14

ご回答ありがとうございます。 試してみましたが、以下のエラーが発生しました。 Uncaught DOMException: Blocked a frame with origin "http:○○" from accessing a cross-origin frame. サーバの変更等、他の方法で解決しようと思います。 ありがとうございました。
guest

0

クロスドメインで引っかからないんですかね?
現状動いているならこれでいけるかもしれません。

JavaScript

1if (parent !== window) { 2 parent.document.title = document.title; 3}

https://developer.mozilla.org/ja/docs/Web/API/Window/parent

投稿2020/02/12 07:56

x_x

総合スコア13749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

rdt

2020/02/13 03:14

ご回答ありがとうございます。 試してみましたが、以下のエラーが発生しました。 Uncaught DOMException: Blocked a frame with origin "http:○○" from accessing a cross-origin frame. サーバの変更等、他の方法で解決しようと思います。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問