मुझे खेद है यदि मेरा प्रश्न बहुत अस्पष्ट है क्योंकि मैं कोडिंग और कोडिंग प्रश्न पूछने के लिए बहुत नया हूं, लेकिन मुझे आशा है कि कोई मेरी समस्या को समझता है क्योंकि यह बहुत निराशाजनक है क्योंकि एक त्रुटि संदेश प्रकट नहीं होता है लेकिन मुझे नहीं पता मैं क्या गलत कर रहा हूँ।

तो संदर्भ के लिए, मेरे पास एक सरणी संख्या शफलर है।

let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

function shuffle(o) {
  for (let j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
  return o;
};
let random = shuffle(numbers);

मैं पुनरावृत्ति के बिना यादृच्छिक संख्या जनरेटर बनाने की कोशिश कर रहा हूं और संख्या से संबंधित यादृच्छिक छवियों को उत्पन्न करने के लिए उन संख्याओं का उपयोग करने जा रहा हूं। इसलिए मैंने पहली छवि को यादृच्छिक की पहली अनुक्रमणिका में सेट किया है

let setImgUrl = "img" + random[0] + ".jpg";

और अब मैं एक बटन बनाना चाहता हूं जो इसे अगली यादृच्छिक छवि पर स्विच करने के तरीके के रूप में यादृच्छिक [1] में बदल देता है।

let calcNewImg;
if (random[0]) {
  calcNewImg = random[1]
} else if (random[1]) {
  calcNewImg = random[2]
}

यह यादृच्छिक [9] (जो अंतिम सूचकांक है) को दोहराता रहेगा और छवि इस तरह दिखाई देती है

Img.setAttribute("src", "img/img" + calcNewImg + ".jpg");

जब मैं अगली छवि पर स्विच करने के लिए बटन पर क्लिक करता हूं, तो यह एक बार काम करता है और बिना किसी त्रुटि संदेश के किसी अन्य समय काम नहीं करता है। आशा है कि मैंने पर्याप्त जानकारी दी है जिसे कोई समझ सकता है, कृपया बेझिझक अधिक जानकारी के लिए पूछें यदि इसकी आवश्यकता है। मैं वास्तव में इस मदद की सराहना करता हूं।

0
Ethan 12 जुलाई 2020, 18:32

1 उत्तर

सबसे बढ़िया उत्तर

मुझे लगता है कि छवि आईडी उत्पन्न करने के लिए आपको जो चाहिए वह एक अनंत लूप है इस तरह कुछ

button=document.getElementById("button")
  showimg=document.getElementById("showimg")

  button.addEventListener("click",getimg)

let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
function shuffle(o) {
 for(let j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
 return o;
};
let random = shuffle(numbers);
var i=0
function getimg(){
    calcNewImg = random[i]
   i++
  if(i>=random.length){
   i=0
 }
   
   showimg.textContent= "img/img" + calcNewImg + ".jpg"

}
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <div id="showimg">###</div>
 <br>
  <button id="button">generate</button>

</body>
</html>
0
Sven.hig 12 जुलाई 2020, 19:02