通过Jquery更改CSS - 我的代码有什么问题
Change CSS via Jquery - What is wrong with my code?
我正在尝试完成一个简单的函数,这段代码有什么问题?
基本上,我正在尝试覆盖一个跨度,其宽度与其包含<a>
链接完全相同。所以我希望黑色跨度框(例如)与包含灰色框一样宽。
function vg() {
if ($("body").hasClass("work-page")) {
var a = $(".projTitle").width();
$(".subtitle").css({
width: a + "px",
})
}
li {
position:relative;
}
li a.projTitle {
display: inline-block;
margin: auto 15px auto 0px;
line-height: 100px;
height: 100px;
overflow: hidden;
outline: 0;
border: 0;
font-weight:300;
background:#ccc;
font-size:18px;
}
li .subtitle {
font-size:10px;
font-family: 'Titillium Web', sans-serif;
font-weight: 500;
opacity: .8;
display: block;
margin-left: 0px;
line-height: 17px;
margin-right: 0px;
height: 100px;
margin-bottom: 0px;
position: absolute;
top: 0px;
padding-top: 83px;
width:auto;
background:#000;
color:#fff;
}
<html>
<body class="work-page">
<ul>
<li>
<a class="css3Animate projTitle" href="work/project/index.html">The Project<span class="css3Animate subtitle">subtext span</span></a>
</li>
</body>
</html>
你需要调用该函数。您可以在脚本标记中调用它,而无需按照下面的注释中的建议在 html 中引用,最好将处理程序附加到脚本标记中而不是内联
$(".css3Animate").click(function(){
vg();;
})
或者,您可以使用内联调用该函数onclick="vg()"
<a class="css3Animate projTitle" href="#" onclick="vg()">The Project<span class="css3Animate subtitle">subtext span</span></a>
在这里看到 jsfiddle 与它一起工作
你有没有
调用这个函数?如果我打电话给我,对我有用vg()
function vg() {
if ($("body").hasClass("work-page")) {
var a = $(".projTitle").width();
console.log(a)
$(".subtitle").css({
width: a + "px",
})
}
}
vg()
li {
position:relative;
}
li a.projTitle {
display: inline-block;
margin: auto 15px auto 0px;
line-height: 100px;
height: 100px;
overflow: hidden;
outline: 0;
border: 0;
font-weight:300;
background:#ccc;
font-size:18px;
}
li .subtitle {
font-size:10px;
font-family: 'Titillium Web', sans-serif;
font-weight: 500;
opacity: .8;
display: block;
margin-left: 0px;
line-height: 17px;
margin-right: 0px;
height: 100px;
margin-bottom: 0px;
position: absolute;
top: 0px;
padding-top: 83px;
width:auto;
background:#000;
color:#fff;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body class="work-page">
<ul>
<li>
<a class="css3Animate projTitle" href="work/project/index.html">The Project<span class="css3Animate subtitle">subtext span</span></a>
</li>
我会对你使用的代码保持警惕。
例如,如果你有更多的元素与你选择的类相同,即projTitle,JQuery的.width()
将获得数组的第一个元素,因为按类($(')选择一些东西。+className)) 将返回具有该类的元素数组。
就像您通过 ID 选择某些内容一样,因为没有任何东西应该共享 ID,您一定会得到正确的元素:)
相关文章:
- 有什么工具可以轻松读取javascript代码吗
- 我不知道为什么我的代码是错误的?又有什么错
- 这个代码在网页中的作用和要求是什么
- 什么'这个javascript代码getElementById有问题
- 问号在这段代码中是什么意思
- 什么'这是谷歌分析跟踪代码使用的技术
- 我不知道此代码中的这些符号是什么意思.十进制到二进制
- 此nodeValue替换代码有什么问题
- 什么正在取代我的'以及“;javascript代码中使用&#39;和&”;
- 使用较少代码隐藏和显示选择菜单内容的更好方法是什么?javascript
- 我的CSS/Javascript下拉菜单测试代码出了什么问题
- 这个代码出了什么问题?(Jquery)
- 什么'这个javascript代码有错吗?(已关闭)
- 控制台中的“function floor(){[本机代码]}”是什么
- 在 Javascript 中实现解耦代码/回调的正确方法是什么?
- 这个代码是什么意思(history.replaceState和history.pushstate)
- 什么'这是一个神奇的javascript代码,用于以及如何创建它
- 这段代码的含义是什么<%=一些可变的%>
- 有人能解释一下evaluate()和dragAndDrop()在下面的角度测试代码中调用了什么吗
- 为什么这个 JQuery 代码什么都不返回