1

IE には、たとえば次のようなリンクを動的に変更しようとすると、次のような問題があります。

<a href="http://www.foo.com">www.foo.com</a>

<a href="http://www.bar.com?q=www.foo.com">www.foo.com</a>

JavaScript を使用すると、リンクが次のように変更されます (IE のみ)。

<a href="http://www.bar.com?q=www.foo.com">http://www.bar.com?q=www.foo.com</a>

それは私がやろうとしていることではありません。

interHTML を保存し、リンクを変更し、古い値で interHTML を復元するなどの解決策を見つけました。は失われます。

現在、innerHTML 内に HTML 属性があるかどうかを確認しようとしています。そうでない場合は、古い HTML を復元します。

function change_link(a,newlink)
{
    if(navigator.appName == 'Microsoft Internet Explorer') {
        var old = a.innerHTML ;
        if(old.indexOf('<')==-1) {
            a.href=newlink;
            a.innerHTML = old;
            return
        }
    }
    a.href=newlink;
}

問題はありますか?

内部 HTML のプレーン テキストにイベントを動的に添付できますか?これは、innerHTML のリセット中に失われますか?

4

0 に答える 0