直接在页面上叠加的URL

时间:2013-04-19 01:59:29

标签: url overlay

我的页面上有一个叠加层,我想给用户一个链接/ URL,直接将它们引导到页面,并加载叠加层。 有可能吗?我该怎么做?

这是我的代码:

$(function() {

  $('#overlay_job').click(function() {

    document.getElementById('iframe_job').src = "http://targeturl-for-my-overlay-content";

    $('#overlay_bg2').fadeIn('fast',function(){
      $('#overlay_box').fadeIn('fast');
    });
  });

  $('#boxclose').click(function() {
    $('#overlay_box').fadeOut('fast',function() {
      $('#overlay_bg2').fadeOut('fast');
    });
  });

  var overlay_bg2 = $("#overlay_box");
  //var top = $(window).scrollTop() - (overlay_bg2.outerHeight() / 2);
  var top=0;
  var left = -(overlay_bg2.outerWidth() / 2);

  overlay_bg2.css({ 'margin-top': top,'margin-left': left });

  if(getUrlVars()["openJobOverLay"] == "Y") {
         $('#overlay_job').trigger('click');
  }
});

function getUrlVars() {
  var vars = {};
  var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,
              function(m,key,value) {
                vars[key] = value;
              });
  return vars;
}

=========== 在页面上,用户可以点击此链接以显示叠加层:

<a id="overlay_job" class="underline" href="javascript:void(0);%20opener.jobframe.location.reload();">
See job openings
</a>
<img src="link_arrow.gif" class="linkarrow">
</div>

1 个答案:

答案 0 :(得分:1)

使用CSS隐藏叠加层:display: none;。给覆盖元素id,然后将id添加到网址,如http://www.yourpage.com#id。然后使用jQuery执行以下操作:

$(document).ready(function(){
  if(window.location.hash) $('#' + window.location.hash).show();
});

修改:

在您的具体情况下,将此行添加为$(document.ready();内的最后一行。

$(function() {

  // All of your code inside this function...

  if(window.location.hash) $('#' + window.location.hash).click();

});

function getUrlVars() { 

// Some more of your code...