Переключение страниц после Zeroclipboard копирует текст

Я видел довольно много сообщений о zeroclipboard, но, к сожалению, ответы не были полезны (понятны) новичку сценария, как я. У меня есть страница с кучей купонов. Когда кто-то нажимает на купон, я хочу скопировать код купона, а затем перенести его в ссылку на купон. Я могу получить КОД для копирования в предупреждении, но не могу понять, как затем перевести их на URL, указанный в ССЫЛКЕ для каждого купона. Может кто-нибудь показать мне способ сделать это? Вот мой код...

<section style="position:relative">
<div id="sliders" style="margin:0 auto; width: auto; height:auto;">
    <div class="scrollable" id="scrollable">
        <div id="slider1" class="items">

            <div onclick="window.open('http://url-one.com','_blank');"> <!--THERE ARE SEVERAL OF THESE-->
                html...
                <div id="clip_container1">
                    <p id="coupon1" link="url-one.com" onMouseOver="move_swf(this)">copytext1</p>
                </div>
            </div>

        </div>
    </div>
</div>
</section>

<script>
ZeroClipboard.setMoviePath( '<?= base_url("resource/js/ZeroClipboard.swf");?>' );
var clip = null;
//  function $(id) { return document.getElementById(id); } //not needed?
function init() 
{
    clip = new ZeroClipboard.Client();
    clip.setHandCursor( true );
    clip.addEventListener('complete', function(client, text) {
        alert("Copied Coupon Code to your clipboard:\n" + text);
//          now open "link" in a new window...;   
    });
   }

function move_swf(ee)
{ 
   copything = document.getElementById(ee.id+"").innerHTML;
   clip.setText(copything.substring(23));
      if (clip.div)
     {    
         clip.receiveEvent('mouseout', null);
         clip.reposition(ee.id);
      }
      else{ clip.glue(ee.id);   
      }
      clip.receiveEvent('mouseover', null);
 }    
window.onload = init;
</script>

1 ответ

Получить нужный элемент DOM по коду купона, который он содержит (при условии, что коды купона уникальны)

Добавьте что-то вроде этого ниже кода предупреждения:

(предполагая jquery в строках кода, которые я добавил):

clip.addEventListener('complete', function(client, text) {
    alert("Copied Coupon Code to your clipboard:\n" + text);

    //Add the two lines below

    var mylink = jQuery( "p:contains(" + text + ")" ).attr('link'); 
    myWhateverOpenSesameFunctionToOpenMyLink(mylink);
});
Другие вопросы по тегам