JavaScript判斷PDF與圖片是否可以預(yù)覽
一、判斷圖片是否可以預(yù)覽
在JavaScript中,可以使用Image對(duì)象來判斷一個(gè)圖片URL是否可以訪問。如果圖片可以被加載,那么load事件會(huì)被觸發(fā);如果圖片無法訪問,error事件會(huì)被觸發(fā)。
function checkImageAccessibility(url, callback) {
var img = new Image();
img.onload = function() {
callback(true); // 圖片可以訪問
};
img.onerror = function() {
callback(false); // 圖片無法訪問
};
img.src = url;
}
// 使用示例
checkImageAccessibility('https://example.com/image.jpg', function(accessible) {
console.log('圖片可訪問性:', accessible ? '是' : '否');
});在這個(gè)例子中,checkImageAccessibility函數(shù)接收一個(gè)圖片URL和一個(gè)回調(diào)函數(shù)。Image對(duì)象的src屬性被設(shè)置為這個(gè)URL,然后監(jiān)聽load和error事件。當(dāng)圖片加載成功或失敗時(shí),相應(yīng)的處理函數(shù)會(huì)被調(diào)用,并且回調(diào)函數(shù)會(huì)被執(zhí)行,傳遞一個(gè)布爾值表示圖片是否可以訪問。
二、判斷PDF是否可以預(yù)覽
訪問PDF的地址,判斷地址是否可以訪問到,這里的請(qǐng)求響應(yīng)使用blob
pdfPreview(fileUrl) {
this.loading = true;
axios({
url: fileUrl,
method: 'GET',
responseType: 'blob',
}).then((res) => {
if (res.status !== 200) return;
setTimeout(() => {
this.loading = false;
}, 300);
this.pdfContainerVisible = true;
this.$nextTick(() => {
let url = '';
if (fileUrl.startsWith('http://')) {
url = fileUrl.substring(5);
} else if (fileUrl.startsWith('https://')) {
url = fileUrl.substring(6);
} else {
url = fileUrl;
}
PDFObject.embed(url, '#pdf-container', {
width: '100%'
});
});
}).catch(() => {
this.loading = false;
this.otherVisible = true;
});
},到此這篇關(guān)于JavaScript判斷PDF與圖片是否可以預(yù)覽的文章就介紹到這了,更多相關(guān)JavaScript判斷PDF與圖片預(yù)覽內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
element?UI中el-dialog實(shí)現(xiàn)拖拽功能示例代碼
我們?cè)陂_發(fā)中常會(huì)遇見拖拽的功能,下面這篇文章主要給大家介紹了關(guān)于element?UI中el-dialog實(shí)現(xiàn)拖拽功能的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12
vue+echarts實(shí)現(xiàn)進(jìn)度條式柱狀圖
這篇文章主要為大家詳細(xì)介紹了vue+echarts實(shí)現(xiàn)進(jìn)度條式柱狀圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
Element中table組件(el-table)右側(cè)滾動(dòng)條空白占位處理
當(dāng)我設(shè)置了max-height,就會(huì)在表格右側(cè)出現(xiàn)一列空白的占位,本文主要介紹了Element中table組件(el-table)右側(cè)滾動(dòng)條空白占位處理,感興趣的可以了解一下2023-09-09
antd Form組件方法getFieldsValue獲取自定義組件的值操作
這篇文章主要介紹了antd Form組件方法getFieldsValue獲取自定義組件的值操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-10-10
Vue環(huán)境下數(shù)據(jù)導(dǎo)出為PDF的最全指南
在現(xiàn)代Web應(yīng)用開發(fā)中,將數(shù)據(jù)導(dǎo)出為PDF是一項(xiàng)常見且重要的功能需求,本文將全面探討Vue環(huán)境下實(shí)現(xiàn)PDF導(dǎo)出的7種主要方法,大家可以根據(jù)自己的需求進(jìn)行選擇2025-05-05
vue+tp5實(shí)現(xiàn)簡(jiǎn)單登錄功能
這篇文章主要為大家詳細(xì)介紹了vue+tp5實(shí)現(xiàn)簡(jiǎn)單登錄功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11
Vue二級(jí)彈窗關(guān)閉錯(cuò)誤的解決指南
本文詳細(xì)分析了Vue.js項(xiàng)目中二級(jí)彈窗關(guān)閉時(shí)出現(xiàn)的DOM操作錯(cuò)誤原因,并提供了多種解決方案,包括確保正確的DOM操作時(shí)機(jī)、處理過渡動(dòng)畫、管理動(dòng)態(tài)組件和清理異步操作等,通過這些方法,可以有效預(yù)防和解決此類問題,提升應(yīng)用的穩(wěn)定性和性能,需要的朋友可以參考下2026-01-01
詳解10分鐘學(xué)會(huì)vue滾動(dòng)行為
本篇文章主要介紹了vue滾動(dòng)行為,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-09-09

