我希望有人在我的网站上查看最新评论,点击它们时,
它应该将它们带到编写评论的业务页面,但页面也应该向下滚动到评论的位置。
我认为如果我给每个我的div提供一个不同的类名,并且类名中的评论ID可能会有可能吗? (我需要给他们相同的id来用css申请格式)。
更具体地说,如何使用jquery直接访问DOM review_XXX(审核ID为xxx)
答案 0 :(得分:3)
你不需要jQuery。只需给链接一个带有#
前缀的href,后跟要跳转到的元素的ID,例如:
<a href="#foo">Foo</a>
...
<div id="foo">This is the div to jump to</div>
请参阅"anchors with the ID attribute" in the W3C HTML Specification.
上述网站的有趣摘录:
使用ID或名称?作者应该 考虑以下问题时 决定是否使用id或name 一个锚名称:
- id属性不仅可以作为锚名称(例如, 样式表选择器,处理
标识符等。)。- 某些较旧的用户代理不支持使用id创建的锚点 属性。
- name属性允许更丰富的锚名称(包含实体)。
另见(对于HTML5):
答案 1 :(得分:1)
我会使用anchor标记的name属性,并将name属性的值添加到url。
因此,在您的网页上,您的评论标题会是
<h2 name="current_item">...</h2>
你的网址看起来像是:
http://somehost.com/somepage/structure.html#current_item
答案 2 :(得分:0)
假设您的评论“ID”值确实是唯一标识符(否则它们可能不应被称为“ID”值),您可以将它们作为“id”值提供给相关元素:
<div id='review_42097'>
that movie sucked
</div>
然后您可以在网址末尾加上“#review_42097”!
<a href='http://my.reviews.com/latest/reviews.php#review_42097'>Click to read reviews!</a>
答案 3 :(得分:0)
这些ID是否是RESTful URL方案的一部分?例如:
http://yoursite.com/reviews/123456
您很可能不需要jQuery来为此生成链接。
如果您不只是链接到该页面,您可以将id存储在元素的data属性中并访问它以执行您的逻辑:
<div id="myElement" data-review-id="123456"></div>
var id = $('#myElement').data('review-id');
// do other logic