0

目标:我想在激活时更改 iFrame 的来源,并在禁用onclick="toggleDarkMode()时将其更改回来。onclick="toggleDarkMode()

问题:我当前的“暗模式”按钮仅更改 iFrame 源一次,当onclick="toggleDarkMode()被激活为“//www.twitch.tv/embed/yaydank/chat?parent=icelz.s3.amazonaws.com&darkpopout”时。然后,当我再次单击它时,它不会将源更改回“//www.twitch.tv/embed/yaydank/chat?parent=icelz.s3.amazonaws.com&popout”。如果有人能帮我解决这个问题,我将不胜感激。先感谢您。

加载页面时我当前的默认 iframe 代码:

<iframe id="myFrame" src="//www.twitch.tv/embed/yaydank/chat?parent=icelz.s3.amazonaws.com&popout" frameborder="0" scrolling="no" height="100%" width="100%"></iframe>

onclick="toggleDarkMode()我当前的 javascript 代码,在激活时会更改 iframe 的来源:

<script>
function myFunctionDark() {
    document.getElementById("myFrame").src = "//www.twitch.tv/embed/yaydank/chat?parent=icelz.s3.amazonaws.com&darkpopout";

}
</script>

这是我当前的“暗模式”按钮,它触发“toggleDarkMode”和“myFunctionDark”功能:

<i class="material-icons dropdown-toggle" onclick="toggleDarkMode();myFunctionDark()" data-tooltip="Dark Mode" data-tooltip-pos="left">wb_sunny</i>

存在问题的实时链接(“黑暗模式”按钮位于右上角“)

4

1 回答 1

0

你总是在执行 myFunctionDark() ,它只会让聊天变暗。尝试在内部设置一个条件,如下所示:

function myFunctionDark() {
  if($(".app-container").hasClass("dark")) {
    document.getElementById("myFrame").src = "//www.twitch.tv/embed/yaydank/chat?parent=icelz.s3.amazonaws.com&darkpopout";
  } else {
    document.getElementById("myFrame").src = "//www.twitch.tv/embed/yaydank/chat?parent=icelz.s3.amazonaws.com&popout";
  }
}
于 2020-08-17T03:11:27.240 回答