我正在尝试创建一个函数,该函数根据可见的元素来更改href链接。
因此在此示例中,我希望我的链接为www.link.com/sample1/sample2。
由于div sample3是隐藏的,因此在此示例中不应将其包含在url中。
<div class="filters"> sample1</div>
<div class="filters"> sample2</div>
<div class="filters" style="display:none"> sample3 </div>
<script>
function rt100_link_function() {
var link = document.getElementById("RT100link");
var all = document.getElementsByClassName("filters");
for (var i = 0, max = all.length; i < max; i++) {
if (isHidden(all[i]))
link.href = link.href;
else
var one = all[i]
link.href = link.href + one.innerhtml;
}
}
function isHidden(el) {
var style = window.getComputedStyle(el);
return ((style.display === 'none'))
}
</script>
我面临的问题是url输出为www.link.com/undefined-我只想获取可见div的内容并将其包含在url中,并以斜杠分隔-但.innerhtml不会。工作吗?
任何帮助表示赞赏!
答案 0 :(得分:0)
使用one.innerHTML
代替one.innerhtml
,
link.href = link.href + one.innerHTML;
.innerhtml
不是DOM Element属性,因此它将始终返回undefined
。