Tôi sử dụng chức năng bên dưới để tạo mã để hiển thị đối tượng flash. Kích thước flash ban đầu là 320x240, nhưng tôi muốn hiển thị nó là 200x150, vì vậy tôi sử dụng chức năng với thông số chiều rộng 200, chiều cao 150. Tất cả các trình duyệt đều hoạt động chính xác nhưng chrome thì không. Nó cho thấy nó là 200x151 (kiểm tra mã hiển thị với kích thước 200x151). Tại sao?Quy mô Chrome flash không chính xác
function getFlashCode(params)
{
debug('getFlashCode');
var defaultParams = {movie: '', flashvars: {}, width:'', height: ''};
for (var key in defaultParams)
{
if (params[key] === undefined)
params[key] = defaultParams[key];
}
var flashvars = '';
for (var key in params.flashvars)
flashvars += encodeURIComponent(key) + '=' + encodeURIComponent(params.flashvars[key]) + '&';
var id = "fl" + Math.random();
var code="";
code += " <object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"" + params.width + "\" height=\"" + params.height + "\" align=\"middle\" id=\"" + id + "\">";
code += " <param name=\"movie\" value=\"" + params.movie + "\" \/>";
code += " <param name=\"quality\" value=\"high\" \/>";
code += " <param name=\"play\" value=\"true\" \/>";
code += " <param name=\"loop\" value=\"true\" \/>";
code += " <param name=\"wmode\" value=\"transparent\" \/>";
code += " <param name=\"scale\" value=\"showall\" \/>";
code += " <param name=\"menu\" value=\"true\" \/>";
code += " <param name=\"devicefont\" value=\"false\" \/>";
code += " <param name=\"salign\" value=\"\" \/>";
code += " <param name=\"allowScriptAccess\" value=\"always\" \/>";
code += " <param name=\"flashvars\" value=\"" + flashvars + "\" \/>";
code += " <!--[if !IE]>-->";
code += " <object type=\"application\/x-shockwave-flash\" flashvars=\""+ flashvars + "\" data=\"" + params.movie + "\" width=\"" + params.width + "\" height=\"" + params.height + "\">";
code += " <param name=\"movie\" value=\"" + params.movie + "\" \/>";
code += " <param name=\"quality\" value=\"high\" \/>";
code += " <param name=\"play\" value=\"true\" \/>";
code += " <param name=\"loop\" value=\"true\" \/>";
code += " <param name=\"wmode\" value=\"transparent\" \/>";
code += " <param name=\"scale\" value=\"showall\" \/>";
code += " <param name=\"menu\" value=\"true\" \/>";
code += " <param name=\"devicefont\" value=\"false\" \/>";
code += " <param name=\"salign\" value=\"\" \/>";
code += " <param name=\"allowScriptAccess\" value=\"always\" \/>";
code += " <param name=\"flashvars\" value=\"" + flashvars + "\" \/>";
code += " <\/object>";
code += " <!--<![endif]-->";
code += " <\/object>";
return code;
}
BTW bạn có thể sử dụng SWFObject tốt hơn khi nhúng tệp flash của mình. Đó là linh hoạt và chăm sóc khả năng tương thích trình duyệt tốt. – Kos
Tôi đã nhận thấy sự kỳ lạ ngày càng nhiều hơn với Flash và Chrome giờ đây Pepper Flash là plugin Flash mặc định cho Chrome. Tôi tự hỏi nếu đây là một trường hợp khác? Có thể bạn đã cài đặt một số plugin Flash cho Chrome, bạn có thể tắt Pepper Flash và thử sử dụng plugin ít lỗi hơn bằng cách truy cập vào đây: chrome: // plugins –