RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-228979

Alexandr Shmidt's questions

Martin Hope
Alexandr Shmidt
Asked: 2020-02-15 01:05:10 +0000 UTC

为什么事件重复时功能停止工作?

  • 1

我正在尝试制作旋转木马。现在我正在开发一个功能,当您单击指标时,会确定指标的索引并将其更改为具有相应索引的图片。该功能有效,但将来,当您单击任何其他指标时,什么都不会发生。包括。无法通过开发人员工具捕获错误。问题是什么?

let imageIndex = 0;

//array with photo
const picArr = [
  'golden-retriever-puppy.jpg',
  'Drathaar.jpg',
  "beagle.jpg",
  'alabay.jpg',
  'rizenshnautser.jpg',
  'Airedale.jpg',
];
showImage(imageIndex, pictureBlock);
function showImage(imageIndex, containerElement){
  containerElement.style.backgroundImage = "url(" +picArr[imageIndex]+ ")";
 //get list of indicators
  let indItems;
  const indicatorList = document.getElementById('indicatorList');
  if(indicatorList) {
    //delete list of indicators
    divIndicator.removeChild(indicatorList);
  } 
  //create new element with other picture
  indItems = document.createElement('ul');    
  divIndicator.appendChild(indItems);
  indItems.setAttribute('id', 'indicatorList');
  for (let i = 0; i < picArr.length; i++){
    const item = document.createElement('li');
    indItems.appendChild(item);
    item.setAttribute('data-order', i);
  }
  //change colour of running indicator item
  indItems.childNodes[imageIndex].setAttribute('id', 'start');
}
function defineIndicatorNumber(e){
  console.log(Number(e.target.getAttribute('data-order')));
  imageIndex = Number(e.target.getAttribute('data-order'));
  showImage(imageIndex, pictureBlock);
}

const indicatorButton = document.querySelectorAll('li');
indicatorButton.forEach(item => item.addEventListener('click', defineIndicatorNumber));

感谢您的帮助,我重写了重新创建的循环,如下所示:

for (let i = 0; i < picArr.length; i++){
    item = document.createElement('li');
    indItems.appendChild(item);
    item.setAttribute('data-order', i);
    let items = document.querySelectorAll('li');
    items.forEach(item => item.addEventListener('click', defineIndicatorNumber));
  }
события
  • 1 个回答
  • 10 Views
Martin Hope
Alexandr Shmidt
Asked: 2020-02-02 01:20:03 +0000 UTC

如何使用递归从代码中删除全局变量

  • 1
    let picArr = [
  'golden-retriever-puppy.jpg',
  'Drathaar.jpg',
  "beagle.jpg",
  'alabay.jpg',
  'rizenshnautser.jpg',
  'Airedale.jpg',
];   
//function for control slide show

//здесь суть вопроса: нужно убрать глобальную переменную отсюда

let idInterval;
function showControl() {

//и поместить сюда

 let idInterval;  
  if(idInterval){    
    clearInterval(idInterval);
    return idInterval = undefined;
  } else {
    idInterval = setInterval(function(){showNextPic(picArr);}, 2000);
  } 
}

//function for getting running array index of running photo
function getIndex(arr) {
  let runningPic = document.querySelector('.pictureBlock');
  let pic = window.getComputedStyle(runningPic);
  let str = pic.backgroundImage;
  let goalStr = str.match(/[a-z?-]+[.]+(jpg)/gi);
  //console.log(goalStr);
  for (let i = 0; i < arr.length; i++){
    if(arr[i] === goalStr[0]){
      return arr.indexOf(arr[i]);
    }
  }
}

//function for showing next picture in manual mode
function showNextPic(arr){
  let ind = getIndex(arr);
  //console.log(arr.length);
  let indicatorItems = document.querySelectorAll('li');
  let runningPic = document.querySelector('.pictureBlock');
  if (ind < arr.length-1){
    ind++;
    //console.log(ind);
    runningPic.style.backgroundImage = "url(" + arr[ind] + ")";
    indicatorItems[ind].style.backgroundColor = 'lightgray';
    indicatorItems[ind-1].style.backgroundColor = 'whitesmoke';
  } else {
    ind = 0;
    runningPic.style.backgroundImage = "url(" + arr[ind] + ")"; 
    indicatorItems[ind].style.backgroundColor = 'lightgray';
    indicatorItems[arr.length-1].style.backgroundColor = 'whitesmoke';
  }  
}
//function for showing previous photo in manual mode
function showPrevPic(arr) {
  let ind = getIndex(arr);
  let indicatorItems = document.querySelectorAll('li');
  let runningPic = document.querySelector('.pictureBlock');
  if (ind > 0){
    ind--;
    runningPic.style.backgroundImage = " url(" + arr[ind] + ")";
    indicatorItems[ind].style.backgroundColor = 'lightgray';
    indicatorItems[ind+1].style.backgroundColor = 'whitesmoke';
  } else {
    ind = arr.length-1;
    runningPic.style.backgroundImage = " url(" + arr[ind] + ")";
    indicatorItems[ind].style.backgroundColor = 'lightgray';
    indicatorItems[0].style.backgroundColor = 'whitesmoke';
  }    
}
  const fW = document.querySelector('.right');
  fW.addEventListener('click', function(){showNextPic(picArr)});
  fW.addEventListener('click', function(){stopSlideShow()});
  const bW = document.querySelector('.left');
  bW.addEventListener('click', function(){showPrevPic(picArr)});
  //picture as a button for slideshow.
  const slideShowButton = document.querySelector('.pictureBlock');
slideShowButton.addEventListener('click', showControl);
рекурсия
  • 1 个回答
  • 10 Views
Martin Hope
Alexandr Shmidt
Asked: 2020-12-16 01:38:19 +0000 UTC

如何在保存计算结果的同时使用递归正确遍历树对象

  • 2

给定对象:

const o = {
    a: 2,
    b: {
      a: 3,
      b: 4,
      c: {
        a: 5,
        b: 6
      }
    },
    c: 1
  }

有必要编写一个函数,该函数将使用递归添加对象属性的所有值。

但是,您不能将初始值用作函数参数。如果没有全局范围内的变量,就无法做到这一点,而且根本不知道如何在代码中完成这项任务。请帮帮我。

javascript
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5