0
我正在爲TinyMCE編寫一個插件來裁剪圖像。此代碼適用於Firefox,但似乎不適用於其他瀏覽器。TinyMCE和圖像裁剪
基本上,我使用JCrop獲取圖像和選定區域的座標,並將其傳遞給服務器端的方法,該方法進行裁剪並返回更新的寬度,高度和圖像src。
之後,找回結果。我更新圖像尺寸和src如下。
tinyMCE.activeEditor.selection.getNode().src = croppedImageSource;
tinyMCE.activeEditor.selection.getNode().width = croppedImageWidth;
tinyMCE.activeEditor.selection.getNode().height = croppedImageHeight;
服務器端方法和作物座標按預期工作。而上面的代碼運行不正常。適用於Firefox,但不適用於其他瀏覽器。
我想知道是否正確更新TinyMCE中選擇的圖像?
這裏是我的全部javascript函數
function cropAndSave()
{
var imgSrc = document.getElementById('jcrop_target').src;
if(checkJcropCoords())
{
$.ajax({
async: false,
url: "/DocViewImageCrop.page",
type: 'POST',
data:
{
imgData: imgSrc,
cW: $("#w").val(),
cH: $("#h").val(),
cX: $("#x").val(),
cY: $("#y").val()
},
dataType: 'json',
complete: function(xmlRequestObject, successString)
{
var fileExists = xmlRequestObject.responseXML.getElementsByTagName("fileExists")[0].firstChild.nodeValue;
if(fileExists == undefined || fileExists == "false")
{
alert('Image not found on server. Try uploading the image, before attempting to resize');
}
else
{
tinyMCE.activeEditor.selection.getNode().src = xmlRequestObject.responseXML.getElementsByTagName("imgsrc")[0].firstChild.nodeValue;
tinyMCE.activeEditor.selection.getNode().width = xmlRequestObject.responseXML.getElementsByTagName("width")[0].firstChild.nodeValue;
tinyMCE.activeEditor.selection.getNode().height = xmlRequestObject.responseXML.getElementsByTagName("height")[0].firstChild.nodeValue;
}
}
});
}
}