Js函数未定义

Js function not defined

本文关键字:未定义 函数 Js      更新时间:2023-09-26

我正在编写一个简单的显示和隐藏函数,它一直告诉我它没有定义。

HTML:

<address>
<a id="windows" href="#" onclick="toggle();">
<img src="imges/c980e3f5-badf-432a-ae6c-9e5341d13462.png" alt="" />
</a>
</address>
         <p class="right_page">
           this is sample of the book container<br/>
           thats suppose to read from ajax
            </p>

这里是函数

    <script type="text/javasript">
function toggle() 
{
    var ele = document.getElementById("right_page");
    var text = document.getElementById("windows");
    if(ele.style.display == "block") {
            ele.style.display = "none";
        text.innerHTML = "show";
    }
    else {
        ele.style.display = "block";
        text.innerHTML = "hide";
    }
} 
</script> 

我认为这是由于你的script标签的错别字。修改type="text/javasript"type="text/javascript"(缺少c)

更新

由于您将innerHtml设置为字符串,您的图像正在从DOM中删除。这将覆盖作为innerHtml一部分的图像。

第一次运行toggle()时,display没有内联样式,因此ele.style.display将是一个空字符串。这意味着它将被放入显示段落的逻辑中。在随后的调用中,该属性将有一个值,因此它应该像您期望的那样运行。

这里有几个错误:

  1. 你是直接从你的代码中粘贴进来的吗?如果是这样,您的<script type...行包含一个错字(应该是"java *c* script ")

  2. 你不能用getElementById()代替right_page,因为right_page只在你的标记中被定义为一个类。

首先您错过了C更改type="text/javascript",其次right_pae不是ID,不能使用document.getElementById,因为你的函数有问题,所以它告诉你函数是未定义的