在访问带有特定ID的URL时添加CSS
Adding CSS when you access a URL with a specific ID in it
我有一个有多个标题的页面,它们都有自己的ID。这个想法是当你点击一个特定的链接时,它会带你到带有标题的页面,并向下滚动到适当的标题。然而,在一些页面上,没有足够的内容让页面向下滚动,也没有足够的标题让页面位于页面顶部。所以我想突出显示内容引用的标题,这样就可以清楚地看到链接代表的内容。
那么链接应该是类似于
http://website.com/test#headerOne
http://website.com/test#headerTwo
然后一旦你访问了URL http://website.com/test#headerOne,它会把你拉到页面上。但是页面的长度不足以让页眉位于页面的顶部。所以我想能够添加一个背景颜色的标题。
更新HTML:
<h3> Header One </h3>
<a name="headerOne"></a>
<p>Content here</p>
我认为一些Jquery需要做,但不确定从哪里开始。我想检测URL,然后做一个if else语句,但这似乎是一个冗长的方法。
任何帮助都将非常感激。
谢谢
使用:target
:
/* I'm obviously assuming you're using h2 elements for headers,
but adjust to taste */
h2:target {
background-color: #ffa;
}
或者,如果您需要支持没有:target
支持的旧浏览器:
var el = document.getElementById(document.location.hash);
el.style.backgroundColor = '#ffa';
和,带函数:
function hashChanged(){
var el = document.getElementById(document.location.hash);
el.style.backgroundColor = '#ffa';
}
document.addEventListener('hashChange', hashChanged, false);
或者,使用类(就像@Fabrizio建议的那样,这应该是我自己想到的):
function hashChanged(){
var el = document.getElementById(document.location.hash),
highlight = 'headerHighlight';
document.querySelector('.' + highlight).classList.remove(highlight)
el.classList.add(highlight);
}
document.addEventListener('hashChange', hashChanged, false);
并使用CSS来定义类的细节:
.headerHighlight {
background-color: #ffa;
}
所以我想突出显示标题。
使用:target
伪类:http://css-tricks.com/on-target/
只是一个例子(有一个平滑的动画):
h2 {
background: none;
transition: background 3s linear 0;
}
h2:target {
background: #000;
}
相关文章:
- 如何在所有ajax调用中向URL添加参数
- 将URL添加到Javascript中
- 向 URL 添加额外的变量
- 浏览器向url添加一些数字
- Angular ui路由器向url添加哈希
- Highcharts将url添加到柱形图
- 在AngularJs中动态地将url添加到脚本标记中
- 将 URL 添加到浏览器后退按钮
- 使用 PhoneGap 在运行时将 URL 添加到 iPhone 中 cordova.plist 文件中的白名单中
- addClass 不起作用,尝试根据 URL 添加类
- 如何使用 Angular.js/Javascript 为 url 添加输入字段验证
- 如何阻止任何滑块向 URL 添加哈希标签
- 为与第一段匹配的任何 URL 添加活动类
- 使用 jsZip 将图像从 url 添加到 zip 文件
- 使用 JavaScript 或 jQuery 如何在页面加载后向 URL 添加参数
- jQuery:以最佳方式根据URL添加类
- 根据 URL 添加类 - 在主页上不起作用
- 替换并向 URL 添加 3 个不同的参数
- Div 叠加层淡入历史记录,并可使用哈希 URL 添加书签
- 如何将已上传的图像的 URL 添加到 Dropzone