打印文档中的第一个链接
print the first link in the document
我想用JavaScript打印页面中的第一个链接。但是当我使用以下代码时,它不起作用:
<html>
<head><title></title></head>
<body>
<a id="mylink" href="http://google.com">Google</a><br />
<script>
a=$('mylink').href;
document.write(document.links[0]);
</script>
</body>
</html>
然后我注释掉了代码" a=$('mylink').href
",它突然起作用了,为什么?为什么可变a
对下一个语句有任何影响?
任何答案都值得赞赏。
有几种可能性:
- 对象
$
未定义,并导致 JavaScript 错误阻止执行第二个语句 $
对象不知道如何处理传入的字符串和错误- 来自
$
返回的值没有一个值(即 - 它返回undefined
),该值不会有属性href
,导致JavaScript错误
代码不起作用,因为在您的示例中,$ 对象不存在并会导致错误。似乎您正在尝试使用像jQuery(对象)这样的JavaScript框架,但是您忘记包含它。
尝试添加以下脚本标记:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
如果你想使用jQuery,你还应该通过.attr("attrname")函数访问属性。
var a = $('#mylink').attr('href');
同样,如果你想使用jQuery,你必须将选择器从"mylink"更改为"#mylink",以指定你正在搜索ID为"mylink"的元素。
我对你想做什么有点困惑,但你不能用 js 编写整个链接吗?前任:
<script>
<!--
document.write('<a href="http://google.com">Google</a>');
-->
</script>
<noscript>
<a href="http://google.com">Google</a>
</noscript>
脚本中的注释标记将被忽略,并且仅存在,因此不支持javacript的浏览器不会在文档中打印它。<noscript>
是让不支持javascript的浏览器有替代内容。
不起作用,因为a=$('mylink').href
无法执行并停止执行以下代码。代码document.write(document.links[0])
正确。当您在没有先前错误行的情况下调用它时,它就可以工作。
我认为在第一行中,您正在尝试使用jQuery库。如果你想这样做,你需要使用 <script>
标签包含 jQuery 库,然后使用以下代码:
document.write($('a:first').attr("href"));
<</div>
div class="answers"> 只需删除jQuery的东西,你不需要它。正如您已经发现的那样,有一个 document.links 集合,因此如果您想打印文档中第一个链接的 herf 值:
document.write(document.links[0].href)
大功告成。
- 多个链接的Javascript动画
- 如何使用jQuery禁用多个链接
- 当页面包含指向一个图像的多个链接时,fancyBox会复制缩略图辅助图像
- 为什么在这种情况下要向JQuery添加两个链接
- 可折叠容器/柱.添加多个链接
- 是否有脚本/代码可以一次将链接属性添加到多个链接
- 将多个链接表映射到嵌套的JQuery手风琴
- jQuery show()和hide()查找页面上的多个链接
- 使用 JavaScript 向一组链接中的第一个链接添加一个属性
- 我想使用 javascript 将第一个链接保留为默认选择
- 打印文档中的第一个链接
- 转到容器中的第一个链接,除非单击另一个链接
- 第一个链接视频JSON的路径
- 用javascript清除链接只适用于第一个链接
- Jquery将第一个链接复制到第二个ul,然后更改第一个链接的类
- X-Editable Bootstrap字段只在第一个链接上加载
- 如何使第一个链接打开一个特定的链接
- 使第一个链接激活Javascript
- 动画滚动锚只适用于第一个链接
- fanybox的问题.Iframe只适用于网站上的第一个链接