我有一个jquery工具覆盖了我的wordpress博客,我有代码可以在调整窗口大小时将其保持在我想要的位置。但在第一次点击加载覆盖时,它显示在页面的中心,我需要将它设置在左侧额外的250像素。
这是我的定位代码:
$(document).ready(function() { setDef() });
function setDef() {
var w = $('.simple_overlay').width();//get width of overlay
var h = $('.simple_overlay').height(); //get height of overlay
var l = ($(window).width() - w) / 2 + 250; //calculate left property
var t = ($(window).height() - h) / 2 //calculate top property
$('.simple_overlay').css({ 'left': l })
}
上面应该计算默认位置(居中)然后加250px,但它不加250。下面的代码在调整窗口大小时添加250。
$(window).resize(function() { rePosition() });
function rePosition() {
var w = $('.simple_overlay').width();//get width of overlay
var h = $('.simple_overlay').height(); //get height of overlay
var l = ($(window).width() - w) / 2 + 250; //calculate left property
var t = ($(window).height() - h) / 2 //calculate top property
$('.simple_overlay').css({ 'left': l })
我想我需要使用(文档)以外的东西。准备好的
Ps-你可以点击右上角关闭覆盖,现在没有视觉指示器,但你的光标会改变。
有什么建议吗?
谢谢!!!
只需去掉setDef()
函数,并在#搜索框导航图像(或任何有点击处理程序的元素)上的点击事件处理程序中调用rePosition()
。
如果你刷新页面并在控制台中运行以下代码,那么它就会模仿这样做。。。
$("#search-box-nav img").bind("click", function() { rePosition(); });