登录
首页 >  文章 >  前端

jQuery弹窗URL获取方法

时间:2025-03-02 22:36:34 349浏览 收藏

本文介绍了使用jQuery $.get()方法加载弹窗后,如何获取弹窗自身URL地址的解决方法。由于直接获取URL会返回加载弹窗页面的地址,文章提出通过将弹窗URL参数设置为全局变量,并在弹窗加载的JS文件中访问该变量来间接获取URL信息。 文章提供了代码示例,演示如何将URL参数(例如id)存储为全局变量window.id,并在弹窗内访问该变量,从而获得弹窗URL的部分信息,并指明如何在此基础上获取完整的URL。 该方法有效解决了$.get()方法加载弹窗时无法直接获取弹窗自身URL地址的问题。

jQuery get加载弹窗后,如何获取弹窗自身的URL地址?

解决jQuery get加载弹窗后获取弹窗自身URL地址的问题

使用jQuery的$.get()方法加载弹窗页面时,直接获取URL会返回加载弹窗的页面地址,而非弹窗本身的地址。 为了解决这个问题,我们可以通过将弹窗URL中的参数作为全局变量来传递。由于window.eval()的特性,弹窗加载的JS文件会在弹窗页面所属的全局环境中执行,因此只需将参数存储为全局变量即可在弹窗内访问。

以下是一个改进的代码示例,演示如何将URL参数存储为全局变量,并在弹窗加载的JS文件中访问:

$.get('./addOrEdit.html?id=100', function (data) {
  // 将URL参数存储为全局变量
  window.id = 100; //  根据实际URL参数修改

  let info = data, oppoBox = $('#oppoBox'), title = $.trim(obj.attr('atitle'));
  if (info.length) {
    $('#oppoInfo').html(info);
    $('#oppoBg').css({'height': $(document).outerHeight() + 'px'});
    oppoBox.css({'width': $(document).outerWidth() * 11 / 18 + 'px'});
    let top = $(window).height() / 18, height = $(window).height() - top * 2;
    oppoBox.css({
      'left': ($(document).outerWidth() - oppoBox.outerWidth()) / 2 + 'px',
      'top': top + 'px',
      'height': height + 'px',
      'overflow': 'hidden'
    });
    $('#oppoTitle').text(title);
    $('#oppoInfo').css({
      'height': height - parseInt($('#toolBar').css('lineHeight')) - parseInt($('#oppoInfo').css('paddingTop')) - parseInt($('#oppoInfo').css('paddingBottom')) + 'px'
    });
    $('#oppoBg,#oppoBox').removeClass('hide');

    // 在弹窗加载后,访问全局变量获取URL参数
    console.log("弹窗ID:", window.id); //  此处可以根据需要使用window.id
    //  根据需要在此处添加获取完整URL的逻辑,例如:
    //  let currentUrl = window.location.href;
    //  console.log("弹窗完整URL:", currentUrl);

  }
});

通过将id参数存储在window.id全局变量中,addOrEdit.html页面加载的JS文件就可以访问到这个参数值,从而间接获取弹窗的URL信息。 请注意将window.id = 100;中的100替换为实际的URL参数值,并根据需要添加获取完整URL的逻辑。 这种方法避免了直接依赖window.location.href获取URL的局限性。

到这里,我们也就讲完了《jQuery弹窗URL获取方法》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>