http://koreanwordgame.com/사파리와 나는 또한 IE7과 8 Math.random()이 무작위가 아닌가?
이 페이지 제 Ajax를 통해 옵션 된 DIV로로드 4 개 단어 다음 인수로 무작위되는 원소를 함유하는 DIV 통과 다음 기능 정답 랜덤 :
var random = function(r){
r.children().sort(function(a,b){
var temp = parseInt(Math.random()*10);
return(temp%2);
}).appendTo(r);
};
random($("#option"));
<div id="option">
<div class="option" id="option1" style="background-color: rgb(229, 232, 238); ">light</div>
<div class="option" id="option4" style="background-color: rgb(183, 190, 204); ">pot</div>
<div class="option" id="option2" style="background-color: rgb(183, 190, 204); ">garlic press</div>
<div class="option" id="option3" style="background-color: rgb(183, 190, 204); ">habitant</div>
</div>
문제는 Safari에서 정답이 항상 최상위 위치에 있다는 것입니다 ...
그리고 IE 7과 8에서는 훨씬 더 자주 상위 위치에 있습니다.
거기에 타임 스탬프를 사용하면 "더 무작위로"기능을 만들 수 있지만 올바르게 작동하도록 고민 중입니다.
문제는'Math.random()'이 아닙니다. 여러분의 "무작위 화"정렬 함수는'0' 또는'1' 만 반환하고 -1은 절대 반환하지 않습니다. –
하지만 크롬과 파이어 폭스에서 잘 작동합니다. 어떻게 되나요? 솔직히 나는이 기능을 쓰지 않고 그냥 내 필요에 맞 춥니 다. – Tules
정말 Fisher-Yates 셔플을 사용해야합니다. 그렇지 않으면 결과에 거의 항상 가중치가 적용됩니다. http://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle –