尝试使用 Javascript 获取 h1 标签的宽度
Trying to get the width of an h1 tag with Javascript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type = "text/javascript">
var textHeadingArray = ["Bloom Defender", "Civilization Wars", "Flight", "Rebuild 2", "Wonderputt"];
var textHeadingIndex = 0;
function changeMainImage() {
textHeadingIndex++;
if (textHeadingIndex >= textHeadingArray.length) {
textHeadingIndex = 0;
}
var changeTheHeading = document.getElementById("slidehsowheading").innerHTML = textHeadingArray[textHeadingIndex];
var heading = document.getElementById("slidehsowheading").style.width;
var sizeOfHeading = heading;
alert(sizeOfHeading);
var subtraction = 75 - sizeOfHeading;
var changeTheHeadingAgain = document.getElementById("slidehsowheading").style.left = subtractionRounded + "px";
}
var mainTiming = setInterval("changeMainImage()", 5000);
</script>
</head>
<body>
<h1 id = "slidehsowheading">Bloom Defender</h1>
</body>
</html>
我试图使用此代码来更改幻灯片的标题,我对 javascript 有点陌生,所以我的问题是当警报弹出时它返回为 null(警报仅用于调试),所以当我尝试使用这个等式中 h1 的空宽度时它是错误的。该等式应该在计时器更改标题并除以 2 后获得标题的宽度,然后从其背景宽度除以 2 中减去该宽度,即 75,使用此公式,您可以将标题在其背景元素中居中
问题是[object].style.width
只有在 CSS 中或通过 style.width
方法显式设置宽度时才有效。
请尝试改用 offsetWidth
属性:
var heading = document.getElementById("slidehsowheading").offsetWidth;
你需要在
DOM 加载后执行此操作。把你的javascript放在你身体的末端,而不是在头上。此外,应使用控制台.log而不是警报进行调试。
相关文章:
- 在<页眉>标签
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- iframe正在添加标签,需要删除它们
- 如何自动调整标签的高度以适应内容
- Jquery标签插件粘贴问题
- Twitter引导程序Typeahead-Id&标签
- Highcharts-如何在自定义格式化程序中获得默认的y轴标签格式化程序
- <h1>标签在离子含量元素中不可见
- 通过 JavaScript 动态创建和打印 h1 标签
- 从h1标签获取链接并使图片可下载
- 如何访问嵌套在 h1 标签中的 img 标签元素
- 我的 h1 标签链接在悬停时会显示一个下划线,我没有添加
- 如何使用 JS 获取 h1 标签的值
- 尝试使用 Javascript 获取 h1 标签的宽度
- 更改页面TITLE标记以匹配页面's AngularJS中的H1标签
- 修改Breadcrumbs JavaScript以从H1标签而不是URL中提取?绝望的
- 用h1标签或URL填充隐藏字段
- 附加的h1标签无法识别
- jQuery [object object]在尝试将第一个h2标签转换为h1时出现错误
- YouTube API-更改H1标签基于鼠标悬停的API抓取缩略图