开发者社区> 问答> 正文

jquery里的这个:target怎么用?

<div border="2px">
        <a href="#p1">to 1</a><br/>
        <a href="#p2">to 2</a><br/>
        <a href="#p3">to 3</a>
    </div>
    <p id="p1">111111111</p>
 
    <p id="p2">22222222222</p>
 
    <p id="p3">3333333333333333</p>
点击超链接a后,可以再控制台通过

$("p:target").css('color','#FAA');

来控制文本的颜色,但是直接写js函数确没有效果,如果要在js文件中通过:target的方式获取到对应的元素应该怎么写?

展开
收起
a123456678 2016-07-13 11:21:15 1916 0
1 条回答
写回答
取消 提交回答
  • :target
    是CSS3新增的的突出锚选择器,类似于CSS中的:hover(鼠标移到元素顶部)类型,是一个伪类选择器,代表的是动态状态,无法用于jQuery静态选择。
    
    至于你在console控制台可以使用,是因为你点击了a锚,存在p:target元素。而你静态js代码是初始绑定,当然就拿不到。
    
    正确的做法是:当有锚点触发时,获取:target元素。你可以这样写:
    
    $(window).on('hashchange',function(){
      $('p:target').css({...});
    });
    2019-07-17 19:55:28
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
23-Vue.js在前端...1506518547.pdf 立即下载
现代Javascript高级教程 立即下载
JavaScript函数 立即下载