使用另一个脚本标记自定义从Angular 8创建的自定义元素javascript文件
我正在使用Angular 8自定义元素创建一个嵌入小部件。我做了一个按钮,并在点击它时给出了一个函数。在构建我的项目之后,我得到了一个脚本文件,它可以放置在任何带有自定义元素标记的网站上使用另一个脚本标记自定义从Angular 8创建的自定义元素javascript文件,javascript,angular,angular8,custom-element,Javascript,Angular,Angular8,Custom Element,我正在使用Angular 8自定义元素创建一个嵌入小部件。我做了一个按钮,并在点击它时给出了一个函数。在构建我的项目之后,我得到了一个脚本文件,它可以放置在任何带有自定义元素标记的网站上 现在,我想使用脚本标记更改按钮的颜色。在将其放在原始脚本文件下时,不会更改颜色,因为页面已经加载 但是如果我把它放在代码上面,它仍然不工作,因为它给出了一个错误,按钮ID为空 var btn=document.getElementById('button'); btn.style.backgroundCo
现在,我想使用脚本标记更改按钮的颜色。在将其放在原始脚本文件下时,不会更改颜色,因为页面已经加载
但是如果我把它放在代码上面,它仍然不工作,因为它给出了一个错误,按钮ID为空
var btn=document.getElementById('button');
btn.style.backgroundColor=“#232323”;
或
var btn=document.getElementById('button');
btn.style.backgroundColor=“#232323”;
我甚至尝试在已经创建的主脚本文件中使用相同的代码。但它仍然没有到来
var Bd=Ur(“ng分量”,gu,$d,{},{},[]),qd=tr({
封装:3,
风格:[
[“#按钮{背景色:#000;}”]
],
数据:{}
});
这对我没用。请帮我解决这个问题
conv小部件的内容是:
conv小部件的CSS代码为:
#按钮{
背景色:rgb(193,0,61);
边界半径:50%;
高度:60px;
宽度:60px;
}
我正在尝试使用新的脚本标记更改按钮的颜色
如果看不到
的源代码,这将是一个暗中操作…当您从开发人员控制台执行getElementById
和样式颜色时会发生什么?(或者在setTimeout
中)我已经给出了源代码以及我得到的错误,你能帮我解决吗。如果内按钮在ng容器中
在shadowDOM中,那么任何文档.xxx
调用都无法在shadowDOM内读取。一种解决方案是在ng容器上添加一个方法,在shadowdom上设置读取的样式(内部),而不查看
的源代码。这将是一种暗中操作……当您从开发控制台执行getElementById
和样式颜色时会发生什么?(或者在setTimeout
中)我已经给出了源代码以及我得到的错误,你能帮我解决吗。如果内按钮在ng容器中
在shadowDOM中,那么任何文档.xxx
调用都无法在shadowDOM内读取。一个解决方案是在ng容器上添加一个方法来设置shadowDOM上的读取样式(内部)