【问题标题】:Replace the vb scripting with Javascript for compatibility in all browsers用 Javascript 替换 vb 脚本以在所有浏览器中兼容
【发布时间】:2012-11-30 06:04:54
【问题描述】:

我正在尝试将 Javascript 中的 vbscript 函数转换为 html 文件以在同一页面中打开链接。我在 vbscript 中使用以下代码:

 <SCRIPT LANGUAGE="VBScript">
 Sub clickHandler()
    sP = Window.Event.SrcElement.ID
    If Left(sP, 1) = "M" Then
        Set oC = Document.All("C" & Mid(sP, 2))
        If oC.Style.Display = "none" Then
            oC.Style.Display = ""
         Else
            oC.Style.Display = "none"
        End If
        Set oC = Nothing
      End If
  End Sub

Javascript 中有哪些替代方法?请提出一些建议或任何在线帮助将 vbscript 代码转换为 Javascript。

【问题讨论】:

标签: javascript html vbscript dom-events


【解决方案1】:
function clickHandler(e)
{
  var sP=(e?(e.target || e.srcElement):window.event.srcElement).id;
  if(sP[0]=="M")
  {
    var oC=document.getElementById("C"+sP.substr(1));
    if(oC.style.display=="none") oC.style.display="";
    else oC.style.display="none";
  }
}

请注意,您还必须以这种方式注册事件处理程序:

<button id="M78" onclick="clickHandler(event);">Whatever</button>

【讨论】:

  • Internet Explorer 支持此功能,但 google chrome 不支持此功能,您可以给我建议吗
  • @user1865365 在 Chrome 和所有其他浏览器中为我工作:jsfiddle.net/K4xFb
  • 在 if(oC.style.display=="none") oC.style.display="" 中显示错误;否则 oC.style.display="none";在铬
  • @user1865365 你有对应ID的元素吗?
猜你喜欢
  • 1970-01-01
  • 2012-10-19
  • 2011-03-10
  • 1970-01-01
  • 1970-01-01
  • 2011-09-01
  • 2020-12-26
  • 2012-04-08
  • 1970-01-01
相关资源
最近更新 更多