Javascript I';我试图在一个带有bookmarklet的网站上制作一个mod菜单,但由于某些原因它没有';我没有出现

Javascript I';我试图在一个带有bookmarklet的网站上制作一个mod菜单,但由于某些原因它没有';我没有出现,javascript,Javascript,所以我一直在尝试制作一个mod菜单,将iReady作为书签,我是HTML的初学者,所以我开始制作一个按钮显示。它显示在主页上,但在课程中,按钮消失。当我退出课程时,按钮将显示“后退”。我的代码: let c = document.createElement('div'); c.innerHTML = `<button onclick="test()">test</button>`; document.body.appendChild(c);

所以我一直在尝试制作一个mod菜单,将iReady作为书签,我是HTML的初学者,所以我开始制作一个按钮显示。它显示在主页上,但在课程中,按钮消失。当我退出课程时,按钮将显示“后退”。我的代码:

let c = document.createElement('div');
  c.innerHTML = `<button onclick="test()">test</button>`;
  document.body.appendChild(c);
让c=document.createElement('div');
c、 innerHTML=`test`;
文件.正文.附件(c);

是的,我刚刚制作了一个按钮,我正在尝试让按钮首先显示。

也许您需要将代码放入onload函数或正文末尾的script标记中,以便在页面加载后运行

在头部:

<head>
    <script>
        window.onload = function () {
            let div = document.body.appendChild(document.createElement('div'));
            let button = document.createElement('button');
            button.setAttribute('onclick', 'test()')
            button.innerHTML = 'test';
            div.append(button);
        }
    </script>
</head>

window.onload=函数(){
让div=document.body.appendChild(document.createElement('div');
let button=document.createElement('button');
setAttribute('onclick','test()'))
button.innerHTML='test';
div.append(按钮);
}
或在体内:

<body>
    <!-- some other html -->
    <script>
        let div = document.body.appendChild(document.createElement('div'));
        let button = document.createElement('button');
        button.setAttribute('onclick', 'test()')
        button.innerHTML = 'test';
        div.append(button);
    </script>
</body>

让div=document.body.appendChild(document.createElement('div');
let button=document.createElement('button');
setAttribute('onclick','test()'))
button.innerHTML='test';
div.append(按钮);

我发现了一个类似mod菜单的东西,它可以制作出你想要做的按钮,它是一个bookmarklet

这是:

javascript:(function()%7Bjavascript%3A (function main() %7B%0A  %2F* I add random characters at the end of the ID so that it does not clash with any other ID's on the page *%2F%0A%0A  const ID %3D%0A    '--picture-in-picture-toolbar-8743fsfjkl9274g9832fkjdslfjksl7498247389'%3B %2F* Helper functions *%2F%0A  const get %3D (selector%2C el %3D document) %3D> el.querySelector(selector)%3B%0A  const getAll %3D (selector%2C el %3D document) %3D>%0A    Array.from(el.querySelectorAll(selector))%3B%0A  %2F* Remove our toolbar if it exists *%2F let _toolbar %3D get(%60%23%24%7BID%7D%60)%3B%0A  if (_toolbar) %7B%0A    _toolbar.parent.removeChild(_toolbar)%3B%0A  %7D%0A  %2F* create the toolbar *%2F const toolbar %3D document.createElement(%0A    'div'%0A  )%3B %2F* Set the toolbar's ID%2C so we can remove it later *%2F%0A  toolbar.id %3D ID%3B %2F* Use shadow-dom as outlined here%3A https%3A%2F%2Fdevelopers.google.com%2Fweb%2Ffundamentals%2Fweb-components%2Fshadowdom *%2F%0A  %2F* Inside shadow dom we don't have to worry about conflicting styles. *%2F const shadowroot %3D toolbar.attachShadow(%0A    %7B mode%3A 'open' %7D%0A  )%3B%0A  shadowroot.innerHTML %3D %60<style>%23container %7B  z-index%3A 9999%3B  border%3A 1px solid %23000%3B  border-radius%3A 3px%3B  padding%3A 0.7em%3B  position%3A fixed%3B  top%3A 0.5em%3B  right%3A 0.5em%3B  background-color%3A rgba(0%2C0%2C0%2C0.7)%3B  font-family%3A -apple-system%2CBlinkMacSystemFont%2C"Segoe UI"%2CRoboto%2C"Helvetica Neue"%2CArial%2C"Noto Sans"%2Csans-serif%2C"Apple Color Emoji"%2C"Segoe UI Emoji"%2C"Segoe UI Symbol"%2C"Noto Color Emoji"%3B%7Dbutton %7B  padding%3A 0.5em 0.7em%3B  border-radius%3A 3px%3B  box-shadow%3A none%3B  border%3A 2px solid %23fff%3B  background-color%3A transparent%3B  color%3A %23fff%3B  cursor%3A pointer%3B%7Dbutton%3Ahover %7B  background-color%3A white%3B  color%3A black%3B%7D<%2Fstyle><div id%3D"container">  <button aria-label%3D"click to alert" id%3D"alert">    Click to Alert  <%2Fbutton> %0A  <button onclick%3D"myFunction()">Click me<%2Fbutton>%0A  <button onclick%3D"myFunction()">Click me<%2Fbutton>%0A  <button onclick%3D"myFunction()">Click me<%2Fbutton>%0A  %0A  <button aria-label%3D"close" id%3D"close">    x  <%2Fbutton><%2Fdiv>    %60%3B%0A  %0A  %0A  get('%23close'%2C shadowroot).addEventListener('click'%2C () %3D> %7B%0A    const toolbar %3D get(%60%23%24%7BID%7D%60)%3B%0A    if (toolbar) %7B%0A      toolbar.parentNode.removeChild(toolbar)%3B%0A    %7D%0A  %7D)%3B%0A  const alertEl %3D get('%23alert'%2C shadowroot)%3B%0A  alertEl.addEventListener('click'%2C e %3D> %7B%0A    alert('You clicked to alert')%3B%0A  %7D)%3B%0A  document.body.appendChild(toolbar)%3B%0A%7D)()%3B%7D)()%3B
javascript:(function()%7Bjavascript%3A(function main()%7B%0A%2F*我在ID的末尾添加了随机字符,这样它就不会与页面上的任何其他ID冲突*%2F%0A%0A常量ID%3D%0A'--画中画工具栏-8743fsfjkl9274g9832fkjdslfjksl7498247389'%3B%2F*帮助程序函数*%2F%0A常量get%3D(选择器%2C el%3D文档)%3D>el.querySelector(选择器)%3B%0A const getAll%3D(选择器%2C el%3D文档)%3D>%0A数组。从(el.querySelectorAll(选择器))%3B%0A%2F*删除工具栏(如果存在的话)*%2F让工具栏%3D获取(%60%23%24%7BID%7D%60)%3B%0A如果(_工具栏)%7B%0A _工具栏%0A父工具栏)。removeChild(_工具栏)%3B%0A%7D%0A%2F*创建工具栏*%2F常量工具栏%3D文档。createElement(%0A'div'%0A)%3B%2F*设置工具栏的ID%2C,以便我们以后可以删除它*%2F%0A toolbar.ID%3D ID%3B%2F*使用阴影dom,如这里所述%3A https%3A%2F%2F developers.google.com%2Fweb%2Fweb组件%2Fshadowdom*%2F%0A%2F*在阴影dom内部,我们不必担心样式冲突。*%2F const shadowroot%3D toolbar.attachShadow(%0A%7B模式%3A'打开“%7D%0A)%3B%0A shadowroot.innerHTML%3D%60%23container%7B z-index%3A 9999%3B边框%3A 1px实体%23000%3B边框半径%3A 3px%3B填充%3A 0.7em%3B位置%3A固定%3B顶部%3A 0.5em%3B右侧%3A 0.5em%3B背景色%3A rgba(0%2C0%2C0.7)%3B字体系列%3A-苹果系统%2cb MacSystemFont%2C“Segoe UI”%2CRoboto%2C“Helvetica Neue”%2CArial%2C“Noto Sans”%2Csans serif%2C“苹果颜色表情符号”%2C“Segoe UI表情符号”%2C“Segoe UI符号”%2C“Noto颜色表情符号”"%3B%7D按钮%7B填充%3A 0.5em 0.7em%3B边框半径%3A 3px%3B方框阴影%3A无%3B边框%3A 2px实心%23fff%3B背景色%3A透明%3B颜色%3A%23fff%3B光标%3A指针%3B%7D按钮%3A悬停%7B背景色%3A白色%3B颜色%3A黑色%3B%7D单击以发出警报%0A单击我%0A单击我%0A单击我%0A单击我%0A单击我%0A%0A%0Ax%60%3B%0A%0A%0A获取(“%23close”%2C shadowroot)。addEventListener(“%click”%2C()%3D>%7B%0A常量工具栏%3D获取(%60%23%24%7BID%7D%60)%3B%0A如果(工具栏)%7B%0A工具栏。parentNode.removeChild(工具栏)%3B%0A%7D%0A%7D)%3B%0A常量警报%3D获取(“%23alert”%2C shadowroot)%3B%0A警报。addEventListener('单击'%2C e%3D>%7B%0A警报('您单击警报')%3B%0A%7D)%3B%0A文档.body.appendChild(工具栏)%3B%0A%7D)(%3B%7D)(%3B%7D)(%3B

我不知道iReady作为一个网站是如何工作的,但听起来好像课程要么覆盖了主页面,要么正在替换它。如果它覆盖了主页面,请将CSS添加到您的
div
中,将其设置为
位置:绝对;z-index:100000;
或同等高的位置,然后看看是否有效。如果您需要更多帮助,您需要专业帮助当课程显示时,请参阅iReady页面的HTML和CSS示例。@Hereticsmonkey是的,谢谢,成功了:D