ฉันคิดว่าบางคนที่นี่ไม่ได้ให้ความสำคัญกับคำถามเฉพาะของคุณมากนัก ดูเหมือนว่าปัญหาของคุณคือการใส่หมายเลขสุ่มในหน้าเว็บและดึงผู้เล่นเข้ามา มีหลายวิธีในการทำเช่นนั้น วิธีที่ง่ายที่สุดคือการเปลี่ยนแปลงโค้ดที่มีอยู่ของคุณเล็กน้อยเช่นนี้ไปยัง document.write () ผลลัพธ์ในหน้า ปกติฉันจะไม่แนะนำ document.write () แต่เนื่องจากโค้ดของคุณเป็นแบบอินไลน์แล้วและสิ่งที่คุณพยายามทำอยู่แล้วก็คือการใส่ div อินไลน์นี่เป็นวิธีที่ง่ายที่สุดในการทำเช่นนั้น เมื่อถึงจุดที่คุณมีหมายเลขสุ่มคุณเพียงแค่ใช้สิ่งนี้เพื่อวางและ div ลงในหน้า:
var randomId = "x" + randomString(8);
document.write('<div id="' + randomId + '">This text will be replaced</div>');
จากนั้นคุณอ้างถึงสิ่งนั้นใน jwplayer ตั้งค่าโค้ดดังนี้:
jwplayer(randomId).setup({
และโค้ดทั้งหมดจะมีลักษณะดังนี้:
<script type='text/javascript' src='jwplayer.js'></script>
<script type='text/javascript'>
function randomString(length) {
var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghiklmnopqrstuvwxyz'.split('');
if (! length) {
length = Math.floor(Math.random() * chars.length);
}
var str = '';
for (var i = 0; i < length; i++) {
str += chars[Math.floor(Math.random() * chars.length)];
}
return str;
}
var randomId = "x" + randomString(8);
document.write('<div id="' + randomId + '">This text will be replaced</div>');
jwplayer(randomId).setup({
'flashplayer': 'player.swf',
'file': 'http://www.youtube.com/watch?v=4AX0bi9GXXY',
'controlbar': 'bottom',
'width': '470',
'height': '320'
});
</script>
อีกวิธีหนึ่งที่จะทำได้
ฉันอาจเพิ่มที่นี่ในตอนท้ายว่าการสร้างตัวเลขสุ่มอย่างแท้จริงเพียงเพื่อสร้างรหัส div ที่ไม่ซ้ำกันนั้นเกินความจำเป็น คุณไม่จำเป็นต้องมีหมายเลขสุ่ม คุณเพียงแค่ต้องมี ID ที่จะไม่มีอยู่ในเพจ เฟรมเวิร์กเช่น YUI มีฟังก์ชันดังกล่าวและสิ่งที่พวกเขาทำคือมีตัวแปรส่วนกลางที่เพิ่มขึ้นทุกครั้งที่มีการเรียกใช้ฟังก์ชันจากนั้นรวมเข้ากับสตริงฐานที่ไม่ซ้ำกัน อาจมีลักษณะดังนี้:
var generateID = (function() {
var globalIdCounter = 0;
return function(baseStr) {
return(baseStr + globalIdCounter++);
}
})();
จากนั้นในการใช้งานจริงคุณจะทำสิ่งนี้:
var randomId = generateID("myMovieContainer");
document.write('<div id="' + randomId + '">This text will be replaced</div>');
jwplayer(randomId).setup({