Javascript 开关未激活功能

Javascript 开关未激活功能,javascript,html,Javascript,Html,当检测到不同的操作系统时,它应该显示不同的内容,但它什么也不显示。我知道这个函数可以工作,因为如果我不使用开关调用这个函数,它就会显示出来。此外,这些超级文本链接只是一个测试。这是我的密码: <script type="text/javascript"> function Mac(){ document.write("<a href=\"http:\/\/www.sublimetext.com\/\">Sublime

当检测到不同的操作系统时,它应该显示不同的内容,但它什么也不显示。我知道这个函数可以工作,因为如果我不使用开关调用这个函数,它就会显示出来。此外,这些超级文本链接只是一个测试。这是我的密码:

<script type="text/javascript">
            function Mac(){
                document.write("<a href=\"http:\/\/www.sublimetext.com\/\">Sublime Text<\/a>");
                document.write("This is the Mac instructions";)
            }
        </script>
        <script type="text/javascript">
            function Windows(){
                document.write("<a href=\"http:\/\/www.sublimetext.com\/\">Sublime Text<\/a>");
                document.write("This is the Windows instructions";)
            }
        </script>
    </div>
    <div class="text-center">
        <h1>Lesson 1: Prerequisites</h1>
            <script>
                switch(OSName) {
                    case "Mac":
                        Mac()
                        break;
                    default:
                        Windows()
                }
            </script>
    </div>

我不确定这是否是问题所在,但可能在mac和windows功能中,您应该替换以下代码:

document.write("This is the Mac instructions";)    
document.write("This is the Windows instructions";)

分号可能是问题所在,document.write可能认为您在结束结束括号前的语句

“document.write”通常用于编写JavaScript时的测试目的。但是document.write有问题,已经过时。为了进行适当的测试,您应该使用“console.log”。然后,您的代码应该如下所示:

console.log("This is the Mac instructions");    
console.log("This is the Windows instructions");
请记住,要查看输出,您需要在浏览器“开发人员工具”中打开控制台


如果要在html中适当地使用字符串进行打印,则可能需要使用returns或将字符串直接附加到html元素。我希望这在某种程度上有所帮助。

您的
Mac()
Windows()
函数中有一个输入错误。 而不是

document.write("This is the Mac instructions";)
document.write("This is the Windows instructions";)

请注意,您不应将每个函数放在不同的
标记中。下面是一个工作示例:

请不要在SO上发布代码,否则会产生控制台错误(除非您对控制台错误本身有疑问)。你知道控制台是什么吗?你看了吗?你看到错误了吗?你认为当你的电脑已经告诉你它在哪里的时候,你可以把每一个打字错误和小的语法错误都发布到Stack Overflow,让这里的人帮你找到它吗?如果你只想费心去看的话?如果您不知道控制台是什么,那么请立即停止编程,在您彻底研究和理解它之前不要重新开始。我还强烈怀疑您的断言“如果我调用函数而不显示开关”,因为函数包含语法错误,并且永远不会执行(实际上,第一行将执行,然后第二行将阻塞)。顺便问一下,您是否有任何特殊原因转义URL中的
/
字符?这不是必需的。是否有任何原因您使用单独的
标记?这不是必需的。是否有任何原因您没有正确缩进代码?这会使读取和维护变得困难。如果您的导航器语句需要位于开关上方,然后它将按预期工作。您还需要修复文档。写入结束括号-在函数括号之后还应该有
。即
Mac()
为什么被否决?我想这是因为对有经验的人来说,给出的答案是显而易见的。我知道提问的人是初学者,但我们都是初学者。如果对回答的人来说某些事情是显而易见的,那么对提问的人来说可能就不那么明显了。为什么会被否决?这是一个应该得到的答案已经解决了op的问题。
document.write("This is the Mac instructions");    
document.write("This is the Windows instructions");
console.log("This is the Mac instructions");    
console.log("This is the Windows instructions");
document.write("This is the Mac instructions";)
document.write("This is the Windows instructions";)
document.write("This is the Mac instructions");
document.write("This is the Windows instructions");