将字符串分成2个div的一半

时间:2017-09-04 10:37:42

标签: javascript jquery html

希望编写一个将字符串分成两半的代码。例如,如果输入的名称为“Trishy”,则为6个字母,前3个字母进入li的{​​{1}},后3个字母进入<ul class="hardcover_front">的{​​{1}} {1}}。

请注意,我需要这个来申请多个不同字符长度的名称。

li

3 个答案:

答案 0 :(得分:4)

以下是一些让您前进的步骤。使用Google了解您不理解的部分。一旦你有一个半工作的解决方案,只需用你的JS更新问题,看看会发生什么......

  • 获取字符串的长度;
  • 确定中间值,考虑到7个字符的中间值为3.5,因此您必须使用Math来舍入结果;
  • 使用substring获取您需要的字符;
  • 使用document.querySelector或类似方法从DOM中检索所需的元素
  • 设置您通过textContentinnerHTML检索到的元素的文字。

答案 1 :(得分:0)

var s = "Trishy";

var half = Math.round(s.length / 2);
var first = s.substr(0, half);
var last = s.substr(half + 1, s.length);
$('#book1 ul.hardcover_front').find('li:nth-child(2)').html(first);
$('#book1 ul.hardcover_back').find('li:nth-child(1)').html(last);

这应该可以解决问题。

答案 2 :(得分:0)

你可以像这样获得字符串的两半,并在任何你想要的地方使用它们

<!DOCTYPE html>
<html>
<body>

<p>Click the button to extract characters from the string.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
    var str = "Helloworld!";
    var length = str.length;
   
    if(length%2 == 0){
    res = str.substring(0, length/2);
   	res1 = str.substring(length/2, length);
    
    }
    else{
    res = str.substring(0, (length/2) + 1);
   	res1 = str.substring((length/2) + 1, length);
    
    }
    alert("First Half- "+res+"\n"+"Second Half- "+res1);
    console.log("First Half- "+res+"\n"+"Second Half- "+res1);
}
</script>

</body>
</html>