Javascriptを使ってMathMLの<math></math>にタグを追加したいと考えています。
ファイル名:sample.xhtml
ソース:
<?xml version="1.0" encoding="Shift_JIS" ?>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN"
"http://www.w3.org/TR/MathML2/dtd/xhtml-math11-f. …
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
<meta http-equiv="content-type" content="text/html;charset=shift_jis" />
<meta http-equiv="content-script-type" content="text/javascript" />
</head>
<body>
<math id="math" xmlns="http://www.w3.org/1998/Math/MathML">
</math>
<br />
<script>
function moji(){
var info = document.getElementById("math");
var element = document.createElement("mi");
element.innerHTML= "x";
info.appendChild(element);
}
</script>
<form>
<input type = "button" value="x" onclick ="moji()" />
</form>
</body>
</html>
これを実行し、ボタンを押すと"X"は表示されるんですが、
javascript: void window.open("","","").document.write("<textarea cols=80 rows=20>" + document.body.parentNode.innerHTML + "</textarea>")
これを使ってテキストに結果を吐き出してみると
<math id="math" xmlns="http://www.w3.org/1998/Math/MathML">
<mi xmlns="http://www.w3.org/1999/xhtml">x</mi>
</math>
このような感じで追加されてしまいます。
ネームスペースの問題だと思うんですが、解決方法がまったく分かりません。
element.removeAttributeNS(null,"xmlns");でネームスペースを削除しようと思いましたが、削除されませんでした。
こういった場合、どうしたらいいでしょうか。
よろしくおねがいします。
No.2ベストアンサー
- 回答日時:
既に解決していると思うが、
すまん,
第一引数の名前空間コピペミスったorz
XHTMLの名前空間じゃなくてMathMLの名前空間じゃなきゃいけませんねorz
No.1
- 回答日時:
var element = document.createElementNS("
http://www.w3.org/1999/xhtml","mi");//XMLなので,innerTextを使いたいという気になれない。
//textContentを使いたい。
//(HTML5を基準にするならありなのかなあ?)
//>document.body.parentNode.innerHTML
//ここは,規格に沿うなら,
//http://www.w3.org/TR/DOM-Level-3-LS/Overview.htm …
//でOperaは出来る。
//沿わないけれどほかの方法としてGeckoやSafariでは
//https://developer.mozilla.org/en/XMLSerializer
//を使えばノードのソースを得られる
//今どうなってるか知らんが,調べた当初はあまり歓迎されてない様子だった
//https://bugzilla.mozilla.org/show_bug.cgi?id=155 …
早速の貴重な意見ありがとうございました。
おかげさまで解決することができました。
まだまだ知らないといけないことがたくさんありそうです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- ASP・SaaS FC2 BLOG <AUDIO TAGを入れプレビューはOk テーンプレートを更新すると ✖ 1 2023/08/14 11:40
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XMLを作成してもタグしか表示さ...
-
公文書のxmlファイルの開き方が...
-
スマホのスプレッドシートでセ...
-
Windowsで見かけるxmlファイル...
-
XML同じ名前の要素を自動で集約...
-
ファイル名の一部削除について
-
XSLで、XMLの空タグを制御したい。
-
xmlファイルが上手にHTMLに変換...
-
XMLデータを変換し印刷する方法
-
XPathで途中に名前空間が設定さ...
-
ヤフー知恵袋みたいなサイトを...
-
XML、XSLTの適応エラー(IEから...
-
binファイルの解凍
-
Excel関数で、セル内の文字列の...
-
Mac Excel VBAについて
-
Webページに関するさまざまな情...
-
head要素
-
マイナポータルの住宅借入金当...
-
エクセルの拡張子XLSのファイル...
-
iPhoneでXMLファイルを開くには...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
順不同・任意のタグ
-
Eclipse でBASIC認証するには
-
XMLのネームスペースの指定・変...
-
PerlによるXMLからCSVへの変換...
-
東芝のDynabookなのですがアン...
-
CPUの考え方を教えてください ...
-
バッチファイルでテキストファ...
-
XML、XSLTの適応エラー(IEから...
-
XMLで要素が記述された順番に意...
-
XML同じ名前の要素を自動で集約...
-
xmlファイルが上手にHTMLに変換...
-
UTF-8でエンコーディングとはど...
-
excelにてweb関数を使い、webデ...
-
XPathで途中に名前空間が設定さ...
-
SNMP リンクダウンとノードダ...
-
head要素
-
XMLデータを整形して、ブラウザ...
-
VBSでxmlの値を書き換えたい
-
同じタグ名の項目取得
-
XMLファイル内のデータ(値)を変...
おすすめ情報