首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用javascript确定上次访问的页面是否是我的网站

使用JavaScript可以通过以下步骤来确定上次访问的页面是否是你的网站:

  1. 首先,你可以使用JavaScript的document.referrer属性来获取上次访问页面的URL。该属性返回一个字符串,其中包含了上次访问页面的URL。
  2. 接下来,你可以使用JavaScript的window.location对象来获取当前页面的URL。可以通过window.location.href属性获取当前页面的完整URL。
  3. 然后,你可以比较上次访问页面的URL和当前页面的URL是否相同。可以使用JavaScript的字符串比较操作符(如===)来进行比较。

下面是一个示例代码,演示如何使用JavaScript来确定上次访问的页面是否是你的网站:

代码语言:txt
复制
// 获取上次访问页面的URL
var referrer = document.referrer;

// 获取当前页面的URL
var currentUrl = window.location.href;

// 比较上次访问页面的URL和当前页面的URL是否相同
if (referrer === currentUrl) {
  console.log("上次访问的页面是我的网站");
} else {
  console.log("上次访问的页面不是我的网站");
}

这段代码会在浏览器的控制台输出相应的结果。

请注意,这种方法只能在用户已经访问过你的网站后才能生效。如果用户是第一次访问你的网站,document.referrer属性将返回空字符串。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

精确判断网站访问者是否是黑客的方法

burpsuite 是一个渗透测试中必备的抓包工具,几乎每个做渗透的都会用这个软件。对于一个网站来说,网站的访问者如果挂了 burpsuite 的代理来访问网站,那多半是不怀好意的。...经常使用 burpsuite 的人应该会有留意到,挂着 burpsuite 的代理是可以访问到 http://burp/ 这个地址的。...同时配合 onload 事件来判断图片是否加载成功。图片还可以用 script 标签加 onload 事件来检测,不一定要访问 favicon.ico。...当检测到使用burpsuite后,要做的就是给服务器发送请求,标记当前的访问者是个攻击者,然后就可以把他引入蜜罐了。我写了一套简单的 demo 用于演示。...图片我挂着 burp 去访问 index.html 它就会检测到我使用了 burp 并向 feedback.png 发送标记请求。图片被标记后再次访问主页就会被拦截器拦下。

1.2K10
  • js清除浏览器缓存的几种方法(项目总结)「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。 以前很少关注这方面的问题,直达我们的技术经理找我们说要换框架,为什么换框架呢,因为缓存的问题,原来的项目是用版本号作为刷新的依据的。...但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些错误的数据。像股票类网站实时更新等,这样的网站是不要缓存的,像有的网站很少更新,有缓存还是比较好的。今天主要介绍清除缓存的几种方法。...假如上次访问了a.html,第二次的时候得到的是上次访问的a.html的结果,而不是重新到服务器获取。 false的话会在url后面加一个时间缀,让它跑到服务器获取结果。...cache只有GET方式的时候有效。true的话会读缓存,可能真的到服务器上。 假如上次访问了a.html,第二次的时候得到的是上次访问的a.html的结果,而不是重新到服务器获取。...使用的是javascript脚本,举例如下: a.html 以下是引用片段: a javascript

    13.6K30

    网站性能最佳体验的34条黄金守则(转载)

    我的指导原则是把这些页面中的内容分割成至少两部分但不超过四部分。这种结果就是在减少DNS查找次数和保持较高程度并行下载两者之间的权衡了。 3、避免跳转 跳转是使用301和302代码实现的。...预加载是在浏览器空闲时请求将来可能会用到的页面内容(如图像、样式表和脚本)。使用这种方法,当用户要访问下一个页面时,页面中的内容大部分已经加载到缓存中了,因此可以大大改善访问速度。...以Yahoo来说,他们转移到CDN上的网站程序静态内容节省了终端用户20%以上的响应时间。使用CDN是一个只需要相对简单地修改代码实现显著改善网站访问速度的方法。...25、减少DOM访问       使用JavaScript访问DOM元素比较慢,因此为了获得更多的应该页面,应该做到: ·     缓存已经访问过的有关元素 ·     线下更新完节点之后再将它们添加到文档树中...当你使用这条规则时,首先要确定用户代理是否支持(iPhone就不支持)。

    1.4K10

    网站性能优化

    我的指导原则是把这些页面中的内容分割成至少两部分但不超过四部分。这种结果就是在减少DNS查找次数和保持较高程度并行下载两者之间的权衡了。 3. 避免跳转   跳转是使用301和302代码实现的。...预加载是在浏览器空闲时请求将来可能会用到的页面内容(如图像、样式表和脚本)。使用这种方法,当用户要访问下一个页面时,页面中的内容大部分已经加载到缓存中了,因此可以大大改善访问速度。...以Yahoo来说,他们转移到CDN上的网站程序静态内容节省了终端用户20%以上的响应时间。使用CDN是一个只需要相对简单地修改代码实现显著改善网站访问速度的方法。 12....减少DOM访问 使用JavaScript访问DOM元素比较慢,因此为了获得更多的应该页面,应该做到: 缓存已经访问过的有关元素 线下更新完节点之后再将它们添加到文档树中 避免使用JavaScript来修改页面布局...当你使用这条规则时,首先要确定用户代理是否支持(iPhone就不支持)

    3.1K40

    利用HTTP Cache来优化网站

    对于网站来说,速度是第一位的。用户总是讨厌等待,面对加载的Video和页面,是非常糟糕的用户体验。所以如何利用Cache来优化网站,值得深入研究。 什么是缓存?...缓存是一个到处都存在的用空间换时间的例子。通过使用多余的空间,我们能够获取更快的速度。...用户在浏览网站的时候,浏览器能够在本地保存网站中的图片或者其他文件的副本,这样用户再次访问该网站的时候,浏览器就不用再下载全部的文件,减少了下载量意味着提高了页面加载的速度。...缓存的缺点 缓存非常有用,但是也带来了一定的缺陷。当我们的网站发生了更新的时候,比如说Logo换了,浏览器本地仍保存着旧版本的Logo,那么浏览器如何来确定使用本地文件还是使用服务器上的新文件?...1、浏览器:Hey,我需要Logo.png这个文件,有没有不匹配“ead145f”这个串的 2、服务器:(检查ETag...) 3、服务器:Hey,我这里的版本也是"ead145f",你已经是最新的版本了

    43410

    七、Selenium与phantomJS----------动态页面模拟点击、网站模拟登录 每天一个小实例1(动态页面模拟点击,并爬取你想搜索的职位信息) 每天一个小实例2(模拟网站登录)我用的是

    4 # 调用环境变量指定的PhantomJS浏览器创建浏览器对象 5 driver = webdriver.PhantomJS() 6 7 #访问的网址,我这里是登录的boss直聘 8...selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器...Selenium 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。   ...的“无界面”(headless)浏览器,它会把网站加载到内存并执行页面上的 JavaScript,因为不会展示图形界面,所以运行起来比完整的浏览器要高效。   ...如果实际页面等待时间过长导致某个元素还没出来,但是你的代码直接使用了这个元素,那么就会抛出NullPointer的异常。

    2.3K70

    7个开放式的 HTML 面试题及回答策略

    解析: 今天的网站通常依赖于HTML,层叠样式表(CSS)和JavaScript。一个优秀的网站开发人员应该能够熟练使用这些语言。...面试官想知道什么: 面试者的知识面 面试者是否可以用多种语言来构建网站 面试者是否需要接受额外的培训 参考答案: 在我开发更大的网站时,习了CSS,因此我不必手动更新每个页面的外观。...我也有一些 JavaScript 经验。我只知道基本功能,但我可以使用它们来使网站更有用和互动。我一直在观看教程,以使我的 JavaScript 功能更强大。...接下来,我会检查每个页面以确保它使用有用的标签,包括标题标签。最后,我会使用链接检查器找到网站上失效的链接。 对你来说,创建一个新网站最困难的部分是什么? 解析: 了解申请人的优缺点非常重要。...通过提出这个问题,面试官可以发现求职者是否了解构建网站时使用的最新元素和属性。此问题还可以用来确定求职者对技术的热情。

    51320

    前端开发面试题答案(五)

    其他问题 1、页面重构怎么操作? 网站重构:在不改变外部行为的前提下,简化结构、添加可读性,而在网站前端保持一致的行为。 也就是说是在不改变UI的情况下,对网站进行优化,在扩展的同时保持一致的UI。...如:默认使用flash上传,但如果浏览器支持 HTML5 的文件上传功能,则使用HTML5实现更好的体验; 5、是否了解公钥加密和私钥加密。...此外,与Node代理服务器交互的客户端代码是由javascript语言编写的, 因此客户端和服务器端都用同一种语言编写,这是非常美妙的事情。...303 See Other 临时性重定向,且总是使用GET 请求新的 URI。 304 Not Modified 自从上次请求后,请求的网页未修改过。...303——建议客户访问其他URL或访问方式 304——自从上次请求后,请求的网页未修改过,服务器返回此响应时,不会返回网页内容,代表上次的文档已经被缓存了,还可以继续使用 305——请求的资源必须从服务器指定的地址得到

    1.7K20

    创建一个分布式网络爬虫的故事

    ETL 管道 当然,我需要从每个访问过的网页中提取所有的超链接。但我也需要在一些页面抓取具体数据。 因此,我构建了自己的ETL管道,以便能够以我所需的数据格式提取数据并进行转换。...同时,主控制器通常有8个爬取进程可供使用,因此这些进程需要不断地提供新的URL来爬取。 因此,我设置了一个阈值,确定主控制器上可以在内存中一次处理多少个URL。...因此,我将爬取深度限制为 1,这意味着只会抓取指定网址及其直接的子网址。这样我的爬虫可以自动发现它要特别寻找的大部分网页。 3. 动态生成的内容 我发现很多网站都是用JavaScript动态生成的。...这意味着当你使用爬虫下载任意网页时,你可能没有它的全部内容。也就是说,除非你能够解释和执行其脚本来生成页面的内容。要做到这一点,你需要一个JavaScript引擎。...域名/网站可能不再存在,或者可能存在DNS问题,或者可能是负载过重,或者服务器可能配置不正确或者…你明白的:) 有些页面是巨大的,有几十兆字节或者更多7。

    1.2K80

    负责任的编写JavaScript(一)

    然而蜜蜂是益虫,黄蜂不是。 网站和 WEB 应用程序的区别并不像黄夹克和蜜蜂之间的区别那么明显,但是如果把一个网站和一个功能齐全的 WEB 应用程序搞混,开发者和使用者都会非常痛苦。...在这种疯狂却无处不在的开发环境中,我们需要摸清它们来确保构建的内容是快速且可访问的。如果你对此不够了解,请在项目的根目录中运行 npm ls --prod,看看是否能识别该列表中的所有内容[6]。...即使这样,也不能保证第三方脚本完全没有问题,我相信您的网站中至少有一些这样的脚本。 我们很容易忘记,网站和 WEB 应用程序所处的环境是一样的。两者都承受着来自各种各样的网络和设备的相同的环境压力。...浏览器自己的导航功能(尽管是同步的)提供了很多好处。比如,根据规范[10]来管理历史记录。没有 JavaScript 的用户(无论是否由他们自己选择[11])都不会完全失去访问权限。...如果客户端路由无法让人们知道页面上的内容已更改,则可访问性也会受到损害。这会使那些依靠辅助技术浏览页面的人无法确定页面上发生了什么改变,解决这个问题是一项艰巨的任务。 然后是我们的老对手:系统开销。

    76050

    使用vuepress-6小时搭建一个完全免费的个人网站

    一、个人网站的作用: 个人相册,笔记,个人小说,员工手册,公司制度文档,等等 像UmiJS,DvaJS的文档也是使用的vuepress,可以参考一下他的网站 我们可以随意的更换侧边栏的信息,比如公司概况...[gto6uxmyzt.png] 二、什么是vuepress 简单介绍一下,vuepress是尤雨溪18年4月12日发布的vue静态网站生成器,支持vue语法,内置webpack,每一个由VuePress...生成的页面都是通过SSR预渲染的HTML,也因此具有非常好的加载性能和搜索引擎优化。...] 本地访问网址 [b2hi9fy223.png] 本地访问图片 这个是vuepress的默认主题,我们后面就需要在 config.js里面进行配置更改就好了,当然如果需要自己写组件的话,就在components...关于默认主题中config.js文件中themeConfig的配置 其实配置很简单,可以参考一下vuepress官方文档,写的非常详细 默认主题配置 下面是我的一些themeConfig:配置信息以及我的

    3K31

    14个 JavaScript 代码优化技巧

    从 W3Tech 的数据来看,全世界将近 96%的网站都在使用它。关于 Web 有一个关键的事实是,你无法控制访问网站的用户所用设备。...当用户访问你的网站时,使用的可能是高端设备也可能是低端设备,网络连接条件也有好有差。这意味着你必须尽可能优化自己的网站,以满足任何用户的需求。...最好只在开发环境中保留这些额外的代码,而不要将其推送到生产环境中,以免给客户端的浏览器增加负担。 要不断问自己,某个功能或代码段是否是必要的。...另一方面,防抖是指定自上次执行相同函数以来再次运行该函数的最短持续时间。换句话说,“上次调用函数后过最少 600 毫秒才执行此函数”。...页面上的图像、非白色元素和 SVG 被视为 DOM 内容;iframe 内部不包含任何内容。 获得更高的 FCP 分数的最佳方法之一是使用代码拆分。

    96920

    Nginx 配置高性能静态网站 - 缓存、Gzip、跨域和防盗链

    Nginx 配置高性能静态网站缓存通过配置合理的缓存机制,可以让浏览器访问不同的页面时不需要多次连接网站服务器上,获取这样重复调用的资源,从而减少浏览器等待的时间,提升性能,提升用户体验。...浏览器根据是否需要向服务器重新发起HTTP请求将缓存过程分为两个部分,分别是强制缓存和协商缓存强制缓存:强制缓存就是向浏览器缓存查找该请求结果,并根据该结果的缓存规则来决定是否使用该缓存结果的过程。...,可以减少http响应传输的数据量,从而提高网站页面的加载速度。...Nginx服务器的其他配置 }}盗链是指本网站的图片等资源链接被使用到了其他非授权的网站页面上。...Http Referer是Http请求头部信息的一部分,当浏览器向网站服务器发送请求的时候,一般会带上Referer,告诉服务器是从哪个页面链接过来的,服务器因此可以获得一些信息用户处理。

    300107

    14个 JavaScript 代码优化技巧

    JavaScript 已经成为有史以来最受欢迎的编程语言之一。根据 W3Tech 的数据,全世界将近 96%的网站都在使用它。...关于 Web 有一个关键的事实是,你无法控制访问网站的用户所用设备的硬件规格。最终用户访问你的网站时,使用的可能是高端设备也可能是低端设备,网络连接条件也有好有差。...最好只在开发环境中保留这些额外的代码,而不要将其推送到生产环境中,以免给客户端的浏览器增加负担。 要不断问自己,某个功能或代码段是否是必要的。...这将减少代码的负担。 另一方面,防抖是指定自上次执行相同函数以来再次运行该函数的最短持续时间。换句话说,“上次调用函数后过最少 600 毫秒才执行此函数”。...页面上的图像、非白色元素和 SVG 被视为 DOM 内容;iframe 内部不包含任何内容。 获得更高的 FCP 分数的最佳方法之一是使用代码拆分。

    90600

    网站前端性能优化

    大家好,又见面了,我是全栈君 继前面几篇文章后再来说说老生常谈的话题,怎么样提升前端性能。...使用内容分发机制 使用内容分发如CDN加速,使用户从离自己最近的服务器下载文件。但一般要求减少DNS查询次数,如同一个页面的请求资源尽量少的使用不同的主机名,可以减少网站并行下载的数量。...外部引用JavaScript和CSS 如果通过引用外部JavaScript和CSS的形式,因为浏览器会缓存这些资源,下次访问时可以使得页面加载更快,而如果将它们写在HTML中每次访问页面时都会再次加载。...配置ETags ETag是一种服务器和浏览器用于识别请求的浏览器已缓存的资源是否与服务端匹配的机制,比last-modified更灵活,能更加精确的知道文件是否被修改过,因为If-Modified-Since...如果缓存中文件的过期时间不存在或已超出,则浏览器会访问服务器获取文件的头信息,检查last modifed或ETags等信息,如果发现本地缓存中的文件在上次访问后没被修改,则使用本地缓存中的文件;如果修改过

    2.1K20

    如何改进 NGINX 配置文件节省带宽?

    为HTML,CSS和JavaScript文件启用Gzip压缩 如您所知,用于在现代网站上构建页面的HTML,CSS和JavaScript文件可能非常庞大。...查看Web服务器是否正在压缩文件的一种方法是使用浏览器的开发人员工具。对于许多浏览器,您可以使用F12键访问这些工具,并且相关信息位于“ 网络”选项卡上。 ?...,这样,当您再次访问该页面时,它不必从服务器重新获取文件。...您可以通过HTTP2.Pro 服务验证您(或任何站点)是否支持HTTP / 2 : 优化记录 让自己喝一杯自己喜欢的饮料,舒适地坐着,然后思考:您上次查看访问日志文件是什么时候?...方法1:禁用页面资源请求的记录 如果您不需要记录检索普通页面资源(例如图像,JavaScript文件和CSS文件)的请求,则这是一种快速简便的解决方案。

    1.1K10

    JQuery 入门学习(三)

    一般都会有一个“检查是否已被占用”链接,用户点击链接后,浏览器打开一个新页面,向服务器发送一个请求,在数据库里咨询看用户名是否已存在,得到结果后返回到页面里提示用户。...甚至我们做一个网站,放上背景音乐,网站中一切链接都由ajax完成(比如点击了一片文章,ajax向服务器请求文章内容,然后用我上次说的Jquery html操作将网页中的一部分进行修改,这样文章就放入了页面而并不刷新页面...首先看看怎么获取服务器上一个txt文件:使用load()方法     (因为ajax使用同源策略,所以在哪个网站运行代码就只能请求该服务器上的内容,我请求的是w3school中的一个txt文件,大家把代码放在...ajax使用get请求向服务器请求html内容     又回到我们开始的那个例子,判断用户名是否存在。     比如我们服务器上有这样一个文件nameexists.php: 我不说xml也不比较二者,只来说说json。因为json是从javascript发展出来的,所以十分适合javascript。

    8.7K20

    让访问者禁用响应式布局界面

    试想一下,如果你收到了一个邮件提到的是关于你用电脑访问看到的外观或内容,那么你用平板或者智能手机可能看不到相同的外观或者内容。...而我称呼它为:查看固定宽度下的布局(当切换之后变成“查看弹性宽度下的布局”)。我并不确定这样可以帮助用户明白之间的异同,但是我认为这比起“桌面端”和“手机端”来说,描述的更加准确。...这是因为我使用后台(可以是任何后台语言,本文中使用 PHP 做演示)来处理 cookie ,这样就可以记录你是否选择了禁用响应式布局。...这就是为什么我个人喜好直接开发网站,但是其他开发者却相反的先使用媒体查询功能开发“手机端”的网站,然后再开发“桌面端”布局。 如果你使用媒体查询为老的浏览器隐藏 CSS3 的功能,这也会产生问题。...说他的父亲在用手机访问一个网站的时候,发现跟电脑访问时不一样,而怀疑自己是不是在访问想访问的网站,然后关掉了。

    1.1K30
    领券