javascript - 为什么 .html() 方法返回的代码比 div 中的代码多

标签 javascript jquery

在这个 fiddle 中:http://jsfiddle.net/m7q3H/52/

我正在访问 div“toupdate”中返回的 html。我预计它只会返回 <script type="text/javascript" charset="utf-8" src="http://static.polldaddy.com/p/6343621.js"></script> 相反,它返回:

 <script type="text/javascript" charset="utf-8" src="http://static.polldaddy.com/p/6343621.js"></script><a name="pd_a_6343621" style="display: inline; padding: 0px; margin: 0px;"></a><div class="PDS_Poll" id="PDI_container6343621"><div style="margin-bottom: 0px; margin-top: 0px;" name="PDI_form6343621" id="PDI_form6343621"><div class="pds-box"><div class="pds-box-outer"><div class="pds-box-inner"><div class="pds-box-top"><div class="pds-question"><div class="pds-question-outer"><div class="pds-question-inner"><div class="pds-question-top"> New Poll</div></div></div></div><div class="pds-answer"><span id="pds-answer6343621"><span class="pds-answer-group"><span class="pds-answer-input"><input class="pds-radiobutton" type="radio" id="PDI_answer28688772" value="28688772" name="PDI_answer6343621"></span><label for="PDI_answer28688772" class="pds-input-label"><span class="pds-answer-span">Answer A</span></label><span class="pds-clear"></span><br></span><span class="pds-answer-group"><span class="pds-answer-input"><input class="pds-radiobutton" type="radio" id="PDI_answer28688773" value="28688773" name="PDI_answer6343621"></span><label for="PDI_answer28688773" class="pds-input-label"><span class="pds-answer-span">Answer B</span></label><span class="pds-clear"></span><br></span><span class="pds-answer-group"><span class="pds-answer-input"><input class="pds-radiobutton" type="radio" id="PDI_answer28688774" value="28688774" name="PDI_answer6343621"></span><label for="PDI_answer28688774" class="pds-input-label"><span class="pds-answer-span">Answer C</span></label><span class="pds-clear"></span><br></span></span></div><div class="pds-vote"><div class="pds-votebutton-outer"><a id="pd-vote-button6343621" class="pds-vote-button"><span>Vote</span></a><span class="pds-links"><a href="javascript:PD_vote6343621(1);" class="pds-view-results">View Results</a><br><a href="http://polldaddy.com/signup-free/?ad=poll-front" target="_blank" class="pds-pd-link">Polldaddy.com</a><span class="pds-clear"></span></span><span class="pds-clear"></span></div></div></div></div></div></div></div><img src="http://pixel.quantserve.com/pixel?a.1=p-18-mFEk4J448M&amp;a.2=p-ab3gTb8xb3dLg&amp;labels.1=type.polldaddy.poll" style="display: none;" border="0" height="1" width="1" alt="Quantcast"></div><div id="PD_superContainer"></div>

这段代码是从哪里来的?我可以通过单独的 jquery 方法而不是 .html() 访问所有这些 javascript 代码吗?

fiddle 代码:

<body>
    <div id="toupdate">
    <script type="text/javascript" charset="utf-8" src="http://static.polldaddy.com/p/6343621.js"></script>
    </div>

    </body>​

$(document).ready(function() {
    console.log('HTML is '+$('#toupdate').html());
});​

最佳答案

它是由 http://static.polldaddy.com/p/6343621.js

的 JS 输出的

.html() 映射到 .innerHTML ,它将实时 DOM 序列化为 HTML,它不会获取原始源。

如果您想要原始源,您需要向文档的 URI 发出新的 HTTP 请求,然后将其作为文本处理。

关于javascript - 为什么 .html() 方法返回的代码比 div 中的代码多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11989462/

相关文章:

javascript - HTML5地理定位中的经纬度半径

javascript - 如何控制 json 呈现的内容?

javascript - jquery 更改背景图像不起作用

javascript - 使用 onchronometerticklistener 的 if 语句

javascript - 输入时删除默认电话号码示例

javascript - Worklight 6.1 加密缓存错误

PHP 从 jquery.load 回显空格

javascript - 当我在其上选择一个元素时,如何在父 li 上添加一个事件类。使用javascript

javascript - 一旦用户鼠标离开文本字段就运行函数

javascript - 如何找到哪个脚本修改了所选属性的CSS