我在追随https://www.w3resource.com/javascript-exercises/javascript-basic-exercises.php,但在练习5上卡住了:

  1. 编写一个JavaScript程序,以正确的方向旋转字符串"w3resource".这是通过定期从字符串末端删除一个字母并将其附加到前面来完成的.

我的第一个 idea 是创建一个变量并使用queryselector将我的内容放入我的h1中,现在我正在寻找一种方法来更改该字符串.我知道在JS中,字符串是不变的,所以我的 idea 是基于使用不同的变量来做到这一点,直到那时我的 idea 都很好,但我陷入了如何在h1元素内的文本上获得所需索引的问题,这只是产生了错误的长度,我不知道为什么.我已经在MDN网站上看了很多JS的内容,但找不到任何对我有帮助的东西.

let MyString = document.querySelector(".rotate_h1_content");

let output = document.querySelector(".output");

output.textContent = MyString.childNodes[0].length;
body{
    background-color: black;
}

h1{
margin: 0px;
padding: 0px;

}
.rotate_h1_content, .rotate_content{
    margin: 0px;
    padding: 0px;
}
.outer_content{
    display: block;
    width: 100%;
    height: 200px;
    margin-top: 200px;
    margin-left: 0px;
    margin-right: 0px;
    padding: 1px;
    text-align: center;
    color: white;
}
<!DOCTYPE html>
<html>
    <head>
        <meta name="Training">
        <meta name="author" content="Vitor Mota">
        <title>Training</title><!--Practice-->
        <meta name="viewport" content="width=device-width, initial-scale=1.0">                       <!--Estou colocando em ingles, mas vou traduzindo nos comentarios-->
        <meta charset="UTF-8">
        <link rel="stylesheet" type="text/css" href="cssFile2.css">
        <script src="JsExc2.js" defer></script>
    </head>
    <body >
        <div class="outer_content">
            <div class="rotate_content">
                <h1 class="rotate_h1_content">
                   Any string
                </h1>
                <h2 class="output">
                   
                </h2>
            </div>
        </div>
        
    </body>
</html>

我试着使用子 node 和长度来查看我的字符串是否有正确的长度,但只得到了那个向后47的数字,而且我的第一个字符在20索引上,有人能帮我吗?我认为可能是填充物和页边距给了这些额外的字符,但事实并非如此

推荐答案

您可以使用字符串操作来完成此操作:

let p = document.getElementById("something");
current = p.innerText;
setInterval(function() {
    p.innerText = current = current.substring(1) + current[0];
}, 200);
<p id="something">Any string</p>

Javascript相关问答推荐

如何分配类型脚本中具有不同/额外参数的函数类型

如何为我的astro页面中的相同组件自动创建不同的内容?

分层树视图

WebGL 2.0无符号整数输入变量

v—自动完成不显示 Select 列表中的所有项目

显示图—如何在图例项上添加删除线效果?

为什么我的导航条打开状态没有在窗口addeventlistener(Reaction Js)中更新?

使用带有HostBinding的Angular 信号来更新样式?

Jest toHaveBeenNthCalledWith返回当前设置的变量值,而不是调用时的值

WebSocketException:远程方在未完成关闭握手的情况下关闭了WebSocket连接.&#三十九岁;

将范围 Select 器添加到HighChart面积图

ngOnChanges仅在第二次调用时才触发

JavaScript&;Reaction-如何避免在不使用字典/对象的情况下出现地狱?

react 路由如何使用从加载器返回的数据

如何在Java脚本中并行运行for或任意循环的每次迭代

如何将字符串拆分成单词并跟踪每个单词的索引(在原始字符串中)?

脚本语法错误只是一个字符串,而不是一个对象?

使用重新 Select 和对象理解 Select 器备忘

我如何让我的弹力球在JavaScript和HTML画布中相互碰撞后改变 colored颜色 ?

如何为Reaction应用程序创建仅登录的路由?