Javascript 段落中词语替换的均匀分布

Javascript 段落中词语替换的均匀分布,javascript,Javascript,如果这是一个愚蠢的问题,我表示歉意。鉴于这个问题本质上是数学问题,而不是编码问题,我不确定它在这里是否合适,但我想我会问 我的问题如下: 页面顶部是一个滑块,它根据滑块的位置输出0到100之间的值 在这下面,我有一段文字,其中包含x个代词(每个代词都用标记包装),我想用这个人的名字来代替。换句话说,我试图替换每个n代词,n的值取决于滑块的位置 例如:(如果我的段落有16个代词) (Slider=0)-不替换任何代词 (slider=25)-4个代词被替换,或多或少地平均分布 (slider=5

如果这是一个愚蠢的问题,我表示歉意。鉴于这个问题本质上是数学问题,而不是编码问题,我不确定它在这里是否合适,但我想我会问

我的问题如下:

页面顶部是一个滑块,它根据滑块的位置输出0到100之间的值

在这下面,我有一段文字,其中包含x个代词(每个代词都用
标记包装),我想用这个人的名字来代替。换句话说,我试图替换每个n代词,n的值取决于滑块的位置

例如:(如果我的段落有16个代词)

  • (Slider=0)-不替换任何代词
  • (slider=25)-4个代词被替换,或多或少地平均分布
  • (slider=50)-8个代词被替换,或多或少分布均匀
  • (slider=75)-12个代词被替换,或多或少分布均匀
  • (slider=100)-替换16个代词
代词的奇数或标尺上滑块的其他位置可能会有点棘手,但四舍五入到最接近的整数应该足够精确,以实现我的目标

我目前的尝试让我想到:

    $('#pronouns').on('input', function() {
    var slider = $(this).val();
    $('#commentContainer').find('.sortable').each(function(index) {
        var innerDivId = $(this).attr('id');
        var name = atob($(this).data('all').name);
        var comment = $(this).find('p');
        var count = comment.children('.pronoun').length;
        var i = 0;
        var child = 0;
        var children = [];
        while (i <= count) {
            n = parseInt(count/((count/100)*slider));
            child = (n * i) + 1;
            children.push(child);
            comment.children('.pronoun:nth-child(' + child + ')').html(name);
            i++;
        }
        console.log("slider is " + slider + ", pronouns : " + count + ", i is: " + i + ", n is: " + n + ", children are: " + children.toString());
    });
});
$(“#代词”).on('input',function(){
var slider=$(this.val();
$(“#commentContainer”).find(“.sortable”).each(函数(索引){
var innerDivId=$(this.attr('id');
var name=atob($(this).data('all').name);
var comment=$(this.find('p');
var count=comment.children('.define').length;
var i=0;
var-child=0;
var children=[];

虽然(我怀疑使用
.degent:nth child
选择器…似乎更容易索引到
comment.children('.degen')
列表,但您应该发布HTML并将其制作成一个片段。这里有很多事情是不清楚的。