0
  onclick='showthread(); myjsfunction()' language='vbscript'>

上記の効果は多少ありますが動作しません。showthread は vbscript 関数で、myjsfunction は javascript 関数です。

ありがとうございました。

4

2 に答える 2

1

あなたの最善の策は、onxyzハンドラーを放棄し、DOM を介して適切に接続すること、または 2 つの組み合わせであるように思えます。

たとえば、要素は次の方法で VBScript を接続できますonxyz (そのための構文をコピーしました)

<div id="mydiv" onclick="showthread();" language="vbscript">

...そして、<script>ドキュメント内のタグが JavaScript をフックする可能性があります。

<script>
document.getElementById("mydiv").attachEvent("onclick", myjsfunction);
</script>

( attachEventVBScript を使用している場合は、IE ベースのエンジンを使用していることを知っているので、そこを使用しています。)

またはもちろん、2 つの<script>要素 (1 つの JavaScript と 1 つの VBScript) を持ち、DOM を介して両方の関数を接続します。

<div id="mydiv">

<script>
document.getElementById("mydiv").attachEvent("onclick", myjsfunction);
</script>

<script type="application/x-vbscript">
document.getElementById("mydiv").attachEvent "onclick", showthread
</script>

(または、VBScript の正しい MIME タイプが何であれ。または、おそらくlanguage="VBScript"IE ベースのエンジンで使用できます。)

于 2012-11-21T04:37:44.397 に答える
0

私はVBScriptにあまり慣れていませんが、次のようなことができるようです

function myjsfunction() {
    window.location = "vbscript:showthread();"

    // other JS code
}

JS から VBScript 関数を呼び出す。これは確かにハックですが、より良い方法を知りません。

ただし、可能であれば、完全に JavaScript に変換することをお勧めします。

于 2012-11-21T04:29:09.687 に答える