EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #03382


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

[EP-tech] Re: Script to open a.ep_document_link in pop-up


Hi Jacob,

From the snippet of Prototype below, it looks like you’re defining a function ‘new_window_links’, but never actually calling it?

 

Does this work (anonymous function):

document.observe("dom:loaded", function() {

    links = $$("a.ep_document_link");

    links.each(function(link){

        link.observe("click", function(event){

            window.open(link.href);

            event.stop();

        });

    });

});

 

or this (same named function, specifically called):

document.observe("dom:loaded", function() {

    function new_window_links(){

      links = $$("a.ep_document_link");

      links.each(function(link){

        link.observe("click", function(event){

          window.open(link.href);

          event.stop();

        });

      });

    }

    new_window_links();

});

 

I haven’t tested either!

Cheers,

John

 

From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of Jacob Wenzel
Sent: 12 August 2014 12:35
To: 'eprints-tech@ecs.soton.ac.uk'
Subject: [EP-tech] Script to open a.ep_document_link in pop-up

 

Hi guys!

Im trying to open document links - '<a class="ep_ducument_link" href="" - in a pop up window (not a new tab), but I can't figure out how to do this in prototype.

In jquery i do this:

jQuery(document).ready(function($) {
    jQuery('a.ei_popup').live('click', function(){
        newwindow=window.open($(this).attr('href'),'','height=575,width=720');
        if (window.focus) {newwindow.focus()}
        return false;
    });
});


which does the trick.

I am totally new to prototype, but I found this snippet, that is supposed to do the same:

document.observe("dom:loaded", function() {
    function new_window_links(){
      links = $$("a.ep_document_link");
      links.each(function(link){
        link.observe("click", function(event){
          window.open(link.href);
          event.stop();
        });
      });
    }
});


But it doesn't do anything. I checked the source code, and the code does load fine from 90_local.js.

Thanks in advance, help and pointers will be greatly appreciated.

Have a nice day!

--

Med venlig hilsen/Best regards

JACOB WENZEL
Projektleder

ENERGIAKADEMIET
Strandengen 1
8305 SAMSØ
+45 60 61 15 97
jw@energiakademiet.dk
www.energiakademiet.dk