1

我正在使用从 JS/JQuery 调用的嵌入式 ActiveX 媒体播放器。我可以毫无问题地在播放器中调用函数和设置属性。但是,我需要 ActiveX 控件的属性之一是 LONG* 指针,它具有签名....

get_CurrentPlaybackTime_Sec(LONG* pVal)

..我不确定从哪里开始。我做了一些谷歌搜索,并在 Javascript 中发现了一些对 BSTR 的松散引用,但我不确定如何实现它。我想我需要一个我在 C# 中使用的“输出”的等价物。这是我到目前为止的地方......

  $("#fooBtn").click(function(){
    var currTime;
    o.get_CurrentPlaybackTime_Sec(currTime);
    $("#fooDiv").text(currTime);
  });

有人可以指出我正确的方向吗?非常感谢任何帮助。

4

1 回答 1

0

JavaScript 不可能,但是您可以在同一页面上使用一段 VBScript,这应该可以实现。我不是 VB 专家,但我会尝试找到一些示例代码。

[更新]

尝试这个:

<script language="vbscript">
Function GetCurrentPlaybackTime()
    Dim objValue
    call o.get_CurrentPlaybackTime_Sec(objValue)
    GetCurrentPlaybackTime = objValue
End Function
</script>

<script language="javascript">
  $("#fooBtn").click(function(){
    $("#fooDiv").text(GetCurrentPlaybackTime());
  });
</script>

[已编辑] 您没有显示get_CurrentPlaybackTime_Sec. 如果它看起来像这样:HRESULT get_CurrentPlaybackTime_Sec([out, retval]LONG* pVal),您应该能够从 JavaScript 调用它:

var currTime = o.get_CurrentPlaybackTime_Sec();

如果没有retval,则需要 VBScript。

于 2013-08-21T11:11:09.007 回答