首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >简单的jQuery问题

简单的jQuery问题
EN

Stack Overflow用户
提问于 2010-12-28 01:06:31
回答 7查看 75关注 0票数 1
代码语言:javascript
运行
复制
<body>
<script type="text/javascript">
$('#red').click(function(){
    $('#write').text('red');
});

</script>
<form id="formId" name="formName" method="post">
  <table>
    <tr>
      <td><div class="clickDiv red" id="red">mmmmmmm</div></td>
      <td><div class="clickDiv green"></div></td>
    </tr>
  </table>
  <div id="write"></div>
  <input type="radio" name="satir1" value="red" />
  <input type="radio" name="satir1" value="green" />
</form>
</body>

这不管用。

代码语言:javascript
运行
复制
<body>
<form id="formId" name="formName" method="post">
  <table>
    <tr>
      <td><div class="clickDiv red" id="red">mmmmmmm</div></td>
      <td><div class="clickDiv green"></div></td>
    </tr>
  </table>
  <div id="write"></div>
  <input type="radio" name="satir1" value="red" />
  <input type="radio" name="satir1" value="green" />
</form>

<script type="text/javascript">
$('#red').click(function(){
    $('#write').text('red');
});
</script>
</body>

这是可行的。为什么?如何在页眉中使用脚本部分?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-12-28 01:09:03

您需要将第一个示例的javascript包装在jQuery document ready handler中。这将导致代码在执行之前等待页面元素呈现到javascript DOM中。

代码语言:javascript
运行
复制
<script type="text/javascript">
$(function() {
    $('#red').click(function(){
        $('#write').text('red');
    });
});
</script>
票数 2
EN

Stack Overflow用户

发布于 2010-12-28 01:10:21

在代码的第一个版本中(不起作用),id#红色的元素在DOM中仍然不可用,因此jquery选择器找不到任何匹配的元素。在第二个版本中,元素是可用的。

但是,作为一种好的实践,建议总是使用jquery ready函数来执行需要在DOM准备就绪时立即运行的任何脚本。它的格式如下:

代码语言:javascript
运行
复制
$(<YOUR FUNCTION>);
OR
$(document).ready(<YOUR FUNCTION>));
票数 3
EN

Stack Overflow用户

发布于 2010-12-28 01:09:24

对您的第一个代码片段使用.ready:http://api.jquery.com/ready/

代码语言:javascript
运行
复制
$(document).ready(function() {
    $('#red').click(function(){
        $('#write').text('red');
    });
});

在您的第一个示例中,当脚本执行时,#white还不存在,所以您需要等待文档准备就绪。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4540368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档