Tôi nghĩ rằng một số người ở đây đã không thực sự tập trung vào câu hỏi cụ thể của bạn. Có vẻ như vấn đề bạn gặp phải là đưa số ngẫu nhiên vào trang và kết nối người chơi với nó. Có một số cách để làm điều đó. Đơn giản nhất là với một thay đổi nhỏ đối với mã hiện tại của bạn như thế này thành document.write () kết quả vào trang. Thông thường, tôi sẽ không giới thiệu document.write (), nhưng vì mã của bạn đã có sẵn và những gì bạn đang cố gắng làm là đặt div vào nội tuyến, đây là cách đơn giản nhất để làm điều đó. Tại thời điểm bạn có số ngẫu nhiên, bạn chỉ cần sử dụng điều này để đặt nó và div vào trang:
var randomId = "x" + randomString(8);
document.write('<div id="' + randomId + '">This text will be replaced</div>');
và sau đó, bạn tham khảo điều đó trong mã thiết lập jwplayer như sau:
jwplayer(randomId).setup({
Và toàn bộ khối mã sẽ trông như thế này:
<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>
Một cách khác để làm điều đó
Tôi có thể thêm vào đây ở phần cuối rằng việc tạo một số thực sự ngẫu nhiên chỉ để tạo một ID div duy nhất là quá mức cần thiết. Bạn không cần một số ngẫu nhiên. Bạn chỉ cần một ID sẽ không tồn tại trong trang. Các khung công tác như YUI có một chức năng như vậy và tất cả những gì chúng làm là có một biến toàn cục được tăng lên mỗi khi hàm được gọi và sau đó kết hợp nó với một chuỗi cơ sở duy nhất. Nó có thể trông giống như sau:
var generateID = (function() {
var globalIdCounter = 0;
return function(baseStr) {
return(baseStr + globalIdCounter++);
}
})();
Và, khi sử dụng thực tế, bạn sẽ làm như sau:
var randomId = generateID("myMovieContainer");
document.write('<div id="' + randomId + '">This text will be replaced</div>');
jwplayer(randomId).setup({