我有一個網頁,其中點擊了一個元素,並且使用JQuery post函數從服務器獲取圖像,並且應該顯示在調整爲圖像大小的新窗口中。相關的Javascript函數如下(其中myImage是以64格式返回的圖像)。使用Javascript在新窗口中彈出圖像
function showPicture(label) {
var newWindow = window.open("", label,"scrollbars=0, toolbar=0");
$.post('picture-view', { labelname: label },
function(myImage) {
newWindow.document.write("<img src='data:image/png;base64," + myImage + "'/>");
newWindow.resizeTo(newWindow.document.getElementsByTagName("img")[0].width, newWindow.document.getElementsByTagName("img")[0].height+newWindow.outerHeight-newWindow.innerHeight);
newWindow.focus();
}
);
}
有三件事導致我的問題。
將圖像插入到帶有白色邊框的新窗口中,我無法弄清楚如何刪除。
術語
newWindow.outerHeight-newWindow.innerHeight
應該在調整窗口大小時考慮工具欄等,但兩者都輸出爲零。這最後一個真的很煩我。如果我將第一行
var newWindow = window.open("", label,"scrollbars=0, toolbar=0");
放在第四行開始的回調函數中,那麼新窗口創建的太小,不會被resizeTo函數調整大小。
任何意見或指示,以進一步閱讀將是非常有益的。
對於邊框,您可以將'style =「border:0;」'或'border =「0」'添加到img標籤。 – RTB 2012-07-16 14:56:58
您是否考慮過頁內[lightbox](https://www.google.com/#q=lightbox)解決方案? – MikeM 2012-07-16 15:05:34
@RTB:我認爲邊界被棄用? – elo96 2012-07-16 15:26:17