我试图构建这个网页,左边是PDF列表,右边是预览面板。但我做不到。我使用框架集来分割这个网页。左上角有列表,右边是预览。
理想:每当用户点击pdf左侧,它应该预览或打开PDF在右侧的框架。
请帮我做这个项目。这对我会很有帮助的。
,非常感谢,提前。
发布于 2022-08-27 15:14:07
也许你可以试试这样的方法。听起来很简单:
不幸的是,JSFiddle阻止了上述PDF的实际加载,但是当您复制粘贴代码时,它应该能工作。
您没有给出关于您的需求或限制的任何限制或信息,因此我将跟踪您的标记,并使用javascript使其工作。
守则;
HTML
<div class="wrap">
<div class="column_left">
<!-- your list of items. Example; -->
<ul>
<li class="pdf_link" data-pdf="https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf">Example PDF</li>
</ul>
</div>
<div class="column_right">
</div>
</div>CSS
html, body {
position: relative;
height: 100%;
}
.wrap {
position: relative;
height: 100%;
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
.column_left {
width: calc(30% - 10px);
height: 100%;
border-right: 10px solid black;
overflow: auto;
}
.column_right {
width: 70%;
height: 100%;
overflow: auto;
}
ul {
height: 100%;
}
li.pdf_link {
cursor: pointer;
}
li.pdf_link:hover {
color: blue;
}Javascript
let el_listItems = document.querySelectorAll('.pdf_link');
let el_pdfContainer = document.querySelector('.column_right');
el_listItems.forEach(el => {
el.addEventListener('click', openPDF);
});
function openPDF(e)
{
let pdfLink = this.getAttribute('data-pdf');
el_pdfContainer.innerHTML = `<object data="${pdfLink}" type="application/pdf" width="100%" height="100%">
<p>Your browser doesn't seem to support PDF files.</p>
<a href="${pdfLink}">Or click here to download the PDF</a>
</object>`;
}https://stackoverflow.com/questions/73379272
复制相似问题