Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsGeneralPHPASPPerlColdFusionFlashHTML, CSS, ScriptsBrowsers

Webmaster Forum / HTML, CSS, Scripts / JavaScript / July 2008



Tip: Looking for answers? Try searching our database.

How to open a PDF document in new window use hyperlink?

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
mistral - 09 Jul 2008 13:15 GMT
what is correct way open a PDF document in new window use hyperlink? I
want show images thumbnails linked with PDF files, when click on
thumbnail, PDF will be opened in new window. Some of PDF files are in
the same web server, other are in a remote location. Any help will be
appreciated.
Steve Swift - 09 Jul 2008 14:37 GMT
> what is correct way open a PDF document in new window use hyperlink? I
> want show images thumbnails linked with PDF files, when click on
> thumbnail, PDF will be opened in new window. Some of PDF files are in
> the same web server, other are in a remote location. Any help will be
> appreciated.

If the webservers are configured correctly then any link that points to
a PDF file will cause the browser to download the content of the PDF
file and to display it appropriately.

So, <A HREF=/manual.pdf><IMG SRC=/manual_thumb.gif></A> will work if
manual.pdf and manual_thumb.gif are in the root of the server.

"appropriately", when the servers are configured correctly, is a matter
of choice between the browser and its user.

I think my server is configured correctly; when I download /test.pdf it
sends "Content-type: application/pdf" in the HTTP headers, which is
sufficient to keep most browsers/users happy.

If you want to name the pdf files anything other than *.pdf then all
bets are off.

Does this have anything to do with JavaScript? Not as far as I can see.

Signature

Steve Swift
http://www.swiftys.org.uk/swifty.html
http://www.ringers.org.uk

mistral - 09 Jul 2008 22:13 GMT
> > what is correct way open a PDF document in new window use hyperlink? I
> > want show images thumbnails linked with PDF files, when click on
[quoted text clipped - 23 lines]
> --
> Steve Swifthttp://www.swiftys.org.uk/swifty.htmlhttp://www.ringers.org.uk

-----------

Is absolutely does not matter are webserver are configured and where
PDF files are located. Some PDF locates somewhere inside web
directory, some - in Internet. Main thing is specify correct path.

The idea is always open PDF file in new window, irrespective of any
circumstances. Plus, control alignment of this window, if
possible(align -right). Opening PDF in same window is bad, since user
will close file and will leave from webpage.

I tried some jscript, but it does not work:

// Opens PDF links in new windows

function doPopups()
{
if (!document.getElementsByTagName) return false;
var links = document.getElementsByTagName("a");
for (var i=0; i < links.length; i++) {
 if (links[i].href.indexOf('.pdf') !== -1) {
  links[i].onclick =
   function() {
    window.open(this.href,'popper','resizable,scrollbars');
    return false;
   }
 }
}
}

It works, but only with link like this:
<a href="http://website.uk.com/downloads/manual.pdf"
target="_blank">TX handbook</a>

and not work with links like this:

<a href="http://www.website.com/pdf/datasheet.pdf"><img src="http://
www.sample.com/images/image.jpg" alt=" " border="1" height="250"
width="100"></a>

Probably due first link contain 'target="_blank"'. But in that case
script is useless at all.
Is there normal stable solution?
RobG - 09 Jul 2008 23:15 GMT
> > > what is correct way open a PDF document in new window use hyperlink? I
> > > want show images thumbnails linked with PDF files, when click on
[quoted text clipped - 43 lines]
>  if (!document.getElementsByTagName) return false;
>  var links = document.getElementsByTagName("a");

The document has a links collection, there is no need for
getElementsByTagName:

 var links = document.links;

<URL: http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-7068919 >

>  for (var i=0; i < links.length; i++) {
>   if (links[i].href.indexOf('.pdf') !== -1) {
>    links[i].onclick =
>     function() {
>      window.open(this.href,'popper','resizable,scrollbars');

A better strategy is to keep a reference to the window and re-use it
if it's been opened previously and is still open - it helps to prevent
multiple pop-ups.

>      return false;
>     }
>   }
>  }

It would be a good idea at this point to prevent circular references:

 links = null;

> }
>
[quoted text clipped - 10 lines]
> script is useless at all.
> Is there normal stable solution?

No.  Browsers are configured by users to deal with pop-ups according
to the users' wishes.  Browsers will also deal with files like PDFs
differently - mine will open them in a different application and will
not open a popup.

--
Rob
mistral - 09 Jul 2008 23:35 GMT
> > > > what is correct way open a PDF document in new window use hyperlink? I
> > > > want show images thumbnails linked with PDF files, when click on
[quoted text clipped - 92 lines]
> --
> Rob
----------------

Just tried this version, no any difference, works the same:

// Opens PDF links in new windows

function doPopups()
{
if (!document.getElementsByTagName) return false;
var links = document.links;
for (var i=0; i < links.length; i++) {
 if (links[i].href.indexOf('.pdf') !== -1) {
  links[i].onclick =
   function() {
    window.open(this.href,'popper','resizable,scrollbars');
    return false;
   }
 }
}
  links = null;
}

Probably, no needs in javascript at all, since target="_blank" in href
statement do this.

<a href="http://website.uk.com/downloads/manual.pdf"
target="_blank">TX handbook</a>

Perhaps use FRAME-based page have more sence.
mistral - 10 Jul 2008 15:05 GMT
> > > > > what is correct way open a PDF document in new window use hyperlink? I
> > > > > want show images thumbnails linked with PDF files, when click on
[quoted text clipped - 123 lines]
>
> Perhaps use FRAME-based page have more sence.
---

Any ideas?
Thomas 'PointedEars' Lahn - 13 Jul 2008 22:10 GMT
>>  if (!document.getElementsByTagName) return false;
>>  var links = document.getElementsByTagName("a");
[quoted text clipped - 5 lines]
>
> <URL: http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-7068919 >

If you read this more thoroughly, you will observe that there may be a need
to use HTMLDocument::getElementsByTagName("a").  The feature test performed
for it here, however, is inadequate.

PointedEars
Signature

Use any version of Microsoft Frontpage to create your site.
(This won't prevent people from viewing your source, but no one
will want to steal it.)
 -- from <http://www.vortex-webdesign.com/help/hidesource.htm>

 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2009 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.