操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    聲明:文章內(nèi)容僅用于學習交流,切勿不當使用。

    上網(wǎng)的時候經(jīng)常會遇到網(wǎng)頁禁止復制文本或者禁止文檔下載的情況。今天結合案例分析下實現(xiàn)這些限制的手法和解除辦法。

    1、文檔復制

    首先創(chuàng)建一個demo.html的文檔,文檔內(nèi)容如下:

    
    
    
        
        
        
        DEMO
        
    
    
        
    測試文本測試文本測試文本
    <script>

    復制成功,請將代碼粘貼到你的網(wǎng)站_淘寶聯(lián)盟代碼復制成功_復制區(qū)與粘貼區(qū)形狀不同,無法粘貼

    let htmlEle = document.documentElement; let bodyEle = document.querySelector('body'); htmlEle.addEventListener('selectstart', (e) => { e.preventDefault(); }); bodyEle.addEventListener('copy', (e) => { e.preventDefault(); }); bodyEle.addEventListener('selectstart', (e) => { e.preventDefault(); }); bodyEle.addEventListener('contextmenu', (e) => { e.preventDefault(); }); </script>

    淘寶聯(lián)盟代碼復制成功_復制成功,請將代碼粘貼到你的網(wǎng)站_復制區(qū)與粘貼區(qū)形狀不同,無法粘貼

    打開文檔可以發(fā)現(xiàn),頁面文本是無法選擇并復制的。因為如代碼所示,頁面元素被綁定了幾個事件(選擇、拷貝、右鍵菜單),阻止了用戶對文本的復制企圖。

    怎么辦呢?

    打開瀏覽器的開發(fā)者工具,切換到標簽下,選擇文本元素,這時可以在下方的“事件監(jiān)聽器”中查看到目標元素及其祖先元素上綁定的事件。展開這些相關的事件,可以看到“移除”按鈕,接下來只需點擊按鈕將這些限制事件移除便可以復制了。

    上述辦法是在事件綁定后,再將它們移除。此外,也可以通過抓包改包的方式移除綁定事件相關的代碼復制成功,請將代碼粘貼到你的網(wǎng)站,從源頭阻止事件的綁定。這需要抓包工具的輔助,這里用到的是。

    假設網(wǎng)頁部署在本地服務器上,首先,打開,在右側(cè)切換到“自動轉(zhuǎn)發(fā)”面板(帶閃電圖標的),勾選圖中兩個選項;然后添加規(guī)則,填上要更改的請求地址以及要替換的本地文件(假設為demo1文件,內(nèi)容如下),填好后保存。

    
    
    
        
        
        
        DEMO
        
    
    
        
    測試文本測試文本測試文本

    設置好以后再次刷新網(wǎng)頁,會發(fā)現(xiàn)頁面的背景色發(fā)生了變化,而且文本也可以直接復制了。

    2、文檔下載

    此處以網(wǎng)上的一個文檔為例,文檔可以在線查看,但是無法直接下載。通過開發(fā)者工具選中文檔,可以看到它對應了一個img標簽(以前是),我們可以將圖片保存到本地,但是如果頁面比較多,手動操作就很麻煩,所以可以用代碼幫我們自動執(zhí)行復制成功,請將代碼粘貼到你的網(wǎng)站,將圖片合并成pdf文件并下載到本地。

    以下代碼可做參考:

    function loadScript (url) {
      let ele = document.createElement('script')
      ele.src = url
    

    復制成功,請將代碼粘貼到你的網(wǎng)站_復制區(qū)與粘貼區(qū)形狀不同,無法粘貼_淘寶聯(lián)盟代碼復制成功

    document.body.appendChild(ele) } function img2dataUrl (options) { let result = '' let img = options.img || '' let width = options.width || img.naturalWidth || img.clientWidth let height = options.height || img.naturalHeight || img.clientHeight let quality = options.quality || 100 let mimeType = options.mimeType || 'image/png' let canvas = document.createElement('canvas') canvas.width = width canvas.height = height let ctx = canvas.getContext('2d') ctx.drawImage(img, 0, 0, img.naturalWidth, img.naturalHeight, 0, 0, width, height) result = canvas.toDataURL(mimeType, quality / 100) return result

    淘寶聯(lián)盟代碼復制成功_復制成功,請將代碼粘貼到你的網(wǎng)站_復制區(qū)與粘貼區(qū)形狀不同,無法粘貼

    } loadScript('https://cdn.bootcdn.net/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js') function img2pdf () { let imgArr = [...document.querySelectorAll('.reader_inner img')] if (imgArr.length === 0) return let doc = new jspdf.jsPDF({unit:'px'}); imgArr.forEach((v,i) => { v.setAttribute("crossOrigin",'anonymous'); let pxPermm = v.width / 210 / 2.2; let imgData = img2dataUrl({img:v}).slice('data:image/png;base64,'.length); (i > 0) && doc.addPage(); doc.addImage(imgData, 'png', 0, 0, v.width / pxPermm, v.height / pxPermm); }) doc.save('img2pdf.pdf'); }

    將代碼放到控制臺或者代碼段中執(zhí)行,執(zhí)行后,再在控制臺調(diào)用 () 方法即可將可瀏覽的頁面合并成PDF下載到本地。

網(wǎng)站首頁   |    關于我們   |    公司新聞   |    產(chǎn)品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區(qū)    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有