ハイパーリンクで「FileDrop」または「DIB」データを取得できない画像をドラッグするため、C#を使用してBHOを作成し、ドラッグドロップ画像を拡張します。
ドキュメントにdragstartイベントを挿入しましたが、正常に機能しましたが、次のようになります。
javascriptがondragstartイベントハンドラーを次のように設定している場合:
<script>
ondragstart = function(){
var obj = event.srcElement;
if(obj.tagName == "A"){
event.dataTransfer.setData("text", "TTTTTTTTTTTTTTT");
}
window.document.title = event.srcElement.tagName;
}
document.attachEvent("ondragstart", ondragstart);
</script>
AND BHO ondragstartイベントハンドラー:
...
if (!string.IsNullOrWhiteSpace(src))
{
try
{
var info = WinInetAPI.GetUrlCacheEntryInfo(src);
src = info.lpszLocalFileName;
}
catch
{
}
eventObj.dataTransfer.setData("Text", src);
}
...
最終的な結果は次のとおりです。TTTTTTTTTTTTTTTT。
デバッガーでは、JavaScriptイベントハンドラーの前に呼び出されたBHOondragstartイベントハンドラーを確認できます。
それで、とにかくjavascriptイベントハンドラーの後にBHOイベントハンドラーを呼び出すことはありますか?
英語でごめんなさい。助けてください。ありがとうございました。