ฉันมีปัญหาเกี่ยวกับจาวาสคริปต์เล็กน้อย และนี่คือเหตุผลว่าทำไมฉันถึงไม่ชอบจาวาสคริปต์ ในหน้าของฉันฉันใช้ Colorbox เพื่อแสดง div โดยมีความเป็นไปได้ที่จะเพิ่มรูปภาพใหม่ จากนั้นฉันใช้ Cutesoft Editor เป็นเครื่องมือเลือกรูปภาพที่เปิดหน้าต่างซึ่งผู้ใช้สามารถเลือกรูปภาพได้ ปัญหาของฉันคือหน้าต่าง Image Picker เปิดขึ้นด้านหลัง Colorbox ดังนั้นผู้ใช้จึงไม่สามารถเลือกรูปภาพได้เว้นแต่จะปิดป๊อปอัป http://gazet.se/TemporaryFiles/preview.png ฉันได้อ่านเอกสารทั้งหมดสำหรับ Cutesoft ที่ฉันสามารถหาได้ และคำสั่งเดียวที่ฉันสามารถหาได้คือ editor.FocusDocument() แต่ก็ยังใช้งานไม่ได้ ฉันเริ่มสงสัยว่า Colorbox ทำให้เกิดปัญหานี้ และ Cutesoft ไม่ได้รับอนุญาตให้แสดงป๊อปอัปบน Colorbox
รหัสเพื่อแสดงป๊อปอัปรูปภาพ (ดำเนินการเมื่อกดปุ่มบนรูปภาพ):
function callInsertImage(clientID) {
var editor1 = document.getElementById('<%=Editor1.ClientID%>');
editor1.FocusDocument();
var editdoc = editor1.GetDocument();
editor1.ExecCommand('new');
editor1.ExecCommand('InsertImage');
editor1.FocusDocument();
InputURL(clientID);
editor1.FocusDocument();
}
function InputURL(clientID)
{
var editor1 = document.getElementById('<%=Editor1.ClientID%>');
var editdoc = editor1.GetDocument();
var imgs = editdoc.images;
if(imgs.length > 0) {
document.getElementById(clientID).value = imgs[imgs.length - 1].src;
if (document.getElementById(clientID).value.substr(0, 19) == 'http://www.gazet.se')
document.getElementById(clientID).value = "~" + document.getElementById(clientID).value.substr(19);
editor1.ExecCommand('new');
document.getElementById(clientID).focus();
}
else {
setTimeout(function() { InputURL(clientID); }, 500);
}
}
รหัสเพื่อเปิดกล่องสี:
function NewImage() {
ResetBox();
this.boxTitle.innerHTML = 'Ny bild';
this.buttonSave.value = 'Lägg till bilden';
$.fn.colorbox({open:true,width:"700px",inline:true,href:"#inline_example1",speed:100});
}