javascript - JS自定义元素,我如何获取属性值
问题描述
我只是在学习,所以我决定重复已经存在的标签,所以
我有自定义元素自定义选择,他必须做与选择相同的事情,但我需要获取属性值的值
这是我的自定义元素代码
class CustomSelect extends HTMLElement{
static get observedAttributes(){
return ["value"]
}
attributesChangeCallback(name,val){
console.log("1234")
if(name === "value"){
this.addTxt(val)
}
}
connectedCallback(){
this.innerHTML = `
<div class = "first" id = "divId"></div>
<div id = "spisoc">
</div>
`
let elem = document.getElementById('divId')
let elem2 = document.getElementById('spisoc')
elem.onclick = function(){
elem2.classList.add("spisocDesing")
}
function addTxt(val){
elem2.innerHTML += val
}
}
}
customElements.define('custom-select',CustomSelect)
这是正文中的html
<body>
<custom-select id = "elem" value = "1234">
</custom-select>
<script>
</script>
</body>
</html>
解决方案
您可以按照以下脚本获取自定义元素
<some-element cutom-elem /> <other-element custom-elem />
<script>
var customs = document.querySelectorAll( "*[custom-elem]" )
</script>
<style>
*[custom-elem] { display: block ; }
</style>
推荐阅读
- java - 回调在 NIO.2 库中的行为方式
- java - libGDX html:draftCompileGwt 编译错误
- javascript - 正则表达式匹配字符串中的所有href,除非包含一个单词
- swift - 已经添加了 LSApplicationQueriesScheme,但我仍然收到错误:“此应用不允许查询方案 whatsapp”
- java - 如何在不引发 org.threeten.bp.zone.ZoneRulesException 的情况下对使用 ZoneId.systemDefault 的代码进行单元测试
- qt - 带有特殊字符的 Qt qmake TARGET 值
- node.js - Node.js Auto Increment E11000 重复键错误收集
- sql - 多对多自连接表上的 ActiveRecord 查询
- python - 获取两个列表之间值的每个成对组合
- javascript - 如何删除javascript和ajax中的评论?