【问题标题】:javascript not working innerhtmljavascript不工作innerhtml
【发布时间】:2012-05-21 14:22:44
【问题描述】:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Login - Loja do Munícipe</title>
    <link rel="stylesheet" type="text/css" href="<%= stCSSFile %>" />
    <link href="../styles/cmm/main.css" rel="stylesheet" type="text/css" />
    <script language="javascript">

       function getbrowser () {
            var browser_info = {
                name: null,
            };

            if (navigator && (navigator.userAgent.toLowerCase()).indexOf("chrome") > -1) browser_info.name = "chrome";
            else if (navigator && (navigator.userAgent.toLowerCase()).indexOf("msie") > -1) browser_info.name = "ie";
            else if (navigator && (navigator.userAgent.toLowerCase()).indexOf("firefox") > -1) browser_info.name = "firefox";
            else if (navigator && (navigator.userAgent.toLowerCase()).indexOf("msie") > -1) browser_info.name = "other";

            if (browser_info.name == "ie" || browser_info.name =="firefox")
            {
            var linkinst = document.getElementById("ccbox");
                linkinst.innerHTML = "<div class=\"citizenCardCtr\" onmouseover=\"this.style.cursor='pointer';\" onclick=\"redirect();\"><h2>Autenticação com cartão do cidadão</h2> <p>Para escolher esta opção terá de ter em sua posse:</p><ul> <li>- Cartão do Cidadão;</li> <li>- Leitor do cartão, correctamente instalado no seu computador;</li> <li>- PIN da assinatura digital;</li> <li>- PIN da morada.</li></ul></div>";
                }
            else if (browser_info.name == "chrome")
                {
                var linkinst = document.getElementById("ccbox");
                linkinst.innerHTML = "<div class=\"citizenCardCtr\" onmouseover=\"this.style.cursor='pointer';\"><h2>Autenticação com cartão do cidadão</h2> <p> Esta funcionalidade não está desponivel no seu browser </div>";
                }


            }
    </script>
    <style type="text/css">
        .stylenumber
        {
            font-size: 14px;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">

    <div id="mainCtr">
            <div class="boxesCtr">
                <div id="ccbox" style="font-size: 12px; color: #574529; font-family: Verdana; text-align:justify;"></div> 
            </div>
    </div>
    </form>
</body>
</html>

getbrowser 功能不起作用...当我加载页面时,id="ccbox" 的 div 在 IE、Chrome 或 Firefox 中不显示任何文本。

【问题讨论】:

  • 我没有看到 getbrowser 函数在任何地方被调用。
  • 你在...调用函数吗?
  • 如前所述。您需要从您的 HTML 中调用该函数。目前你刚刚创建了一个函数。但是要使用它,您需要从 HTML 中调用它。除非我遗漏了什么,而你正在调用它?

标签: javascript asp.net html


【解决方案1】:

尝试在getbrowser的定义之前添加这个:

window.onload = getbrowser;

【讨论】:

  • 函数定义之外的任何地方都可以。之前或之后,没关系。
  • 在函数声明前添加:function getbrowser(){
【解决方案2】:

尝试在getbrowser 函数定义的正下方添加:

window.onload=getbrowser;

【讨论】:

    【解决方案3】:

    在定义getbrowser之前添加这个window.onload=getbrowser;

    所以它看起来像这样。

    <script language="javascript">
    window.onload=getbrowser;
    function getbrowser () {
    

    【讨论】:

    • 我的错,我已经修复了答案
    【解决方案4】:

    将脚本放在页脚中。它会起作用的。

    【讨论】:

    • 还是不行,他声明的函数没有被调用。
    • 嗨,朋友,如果您将脚本放在正文之后,它应该可以工作
    • 否则需要在body onload中调用函数
    • @AsaithambiPerumal:不管这段代码放在哪里,如果你不在某处调用该函数,它就不会被执行。你可以在标题中调用它,它仍然可以正常工作。就个人而言,我将所有的 Javascript 代码都放在了标头中(实际上,主要是在外部 .js 文件中,但这些也包含在标头中)。
    • 我没有回答一般情况,在这种情况下。他们需要在页面加载后调用该函数。那么只有innerHTML 可以工作。这意味着在文件准备好之后
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多