优化2.0标准版代码
parent
5817404f72
commit
81e755d8fc
@ -0,0 +1,90 @@
|
||||
let pdfUrl = '';
|
||||
let pageNum = 1;
|
||||
$().ready(function (data) {
|
||||
document.getElementById('pdf-file-input').addEventListener('change', function(event) {
|
||||
const file = event.target.files[0];
|
||||
if (file) {
|
||||
const fileReader = new FileReader();
|
||||
fileReader.onload = function() {
|
||||
pdfUrl = URL.createObjectURL(new Blob([this.result], { type: 'application/pdf' }));
|
||||
document.getElementById('showMegerPdfIframe').src = `${pdfUrl}#page=${pageNum}×tamp=${Date.now()}`;
|
||||
//updatePage();
|
||||
};
|
||||
fileReader.readAsArrayBuffer(file);
|
||||
}
|
||||
});
|
||||
|
||||
// document.getElementById('download-page').addEventListener('click', function() {
|
||||
// const iframe = document.getElementById('iframe1');
|
||||
// const pdfUrl = iframe.src;
|
||||
// const pageNum = getSelectedPageNumber(); // 假设有一个函数getSelectedPageNumber()来获取当前页码
|
||||
//
|
||||
// if (pdfUrl) {
|
||||
// getBlobAsBase64(pdfUrl).then(base64Data => {
|
||||
// fetch(path + '/commom/savePdfPage', {
|
||||
// method: 'POST',
|
||||
// headers: {
|
||||
// 'Content-Type': 'application/json'
|
||||
// },
|
||||
// body: JSON.stringify({ base64Data, pageNum })
|
||||
// })
|
||||
// .then(response => response.json())
|
||||
// .then(data => {
|
||||
// if(data.status == 'success'){
|
||||
// toastr.success(data.message);
|
||||
// }
|
||||
// })
|
||||
// .catch(error => {
|
||||
// toastr.error(error);
|
||||
// });
|
||||
// })
|
||||
// }
|
||||
// });
|
||||
|
||||
// document.getElementById('next-page-btn').addEventListener('click', function() {
|
||||
// pageNum++;
|
||||
// updatePage();
|
||||
// });
|
||||
//
|
||||
// document.getElementById('prev-page-btn').addEventListener('click', function() {
|
||||
// if (pageNum > 1) {
|
||||
// pageNum--;
|
||||
// updatePage();
|
||||
// }
|
||||
// });
|
||||
});
|
||||
|
||||
function updatePage() {
|
||||
if (pdfUrl) {
|
||||
document.getElementById('current-page').textContent = pageNum;
|
||||
const iframe = document.getElementById('showMegerPdfIframe');
|
||||
// 重新创建 iframe 元素以强制重新加载
|
||||
const newIframe = document.createElement('iframe');
|
||||
newIframe.id = 'showMegerPdfIframe';
|
||||
newIframe.width = '100%';
|
||||
newIframe.height = '100%';
|
||||
newIframe.src = `${pdfUrl}#page=${pageNum}×tamp=${Date.now()}`;
|
||||
// 替换旧的 iframe 元素
|
||||
iframe.parentNode.replaceChild(newIframe, iframe)
|
||||
}
|
||||
}
|
||||
|
||||
var iframe = document.getElementById("showMegerPdfIframe");
|
||||
if (iframe.attachEvent) {
|
||||
iframe.attachEvent("onreadystatechange", function () {
|
||||
//此事件在内容没有被载入时候也会被触发,所以我们要判断状态
|
||||
//有时候会比较怪异 readyState状态会跳过 complete 所以我们loaded状态也要判断
|
||||
if (iframe.readyState === "complete" || iframe.readyState == "loaded") {
|
||||
//代码能执行到这里说明已经载入成功完毕了
|
||||
//要清除掉事件
|
||||
iframe.detachEvent("onreadystatechange", arguments.callee);
|
||||
//这里是回调函数
|
||||
}
|
||||
});
|
||||
} else {
|
||||
iframe.addEventListener("load", function () {
|
||||
$("#iframeLoad").val(1);
|
||||
//代码能执行到这里说明已经载入成功完毕了
|
||||
this.removeEventListener("load", arguments.call, false);
|
||||
}, false);
|
||||
}
|
||||
Loading…
Reference in New Issue