【问题标题】:How can I check how many times the local HTML document was opened?如何查看本地 HTML 文档打开了多少次?
【发布时间】:2015-01-23 08:11:55
【问题描述】:

简单地说,假设我们有一个独立的 HTML 文档文件,它被发送给接收者。 是否有任何解决方案(可能使用 3d 方柜台服务)来检查文档是否已打开。如果对用户隐藏该操作会更好。

我认为在“友好”服务器上放置一些 PHP 脚本并对其进行 AJAX 调用是无用的,因为跨站点请求。还是我错了,这可以实现?真的,我不是最好的。

有什么想法吗?请帮忙,谢谢。 * 最简单的方法就是最好的。

编辑:当用户查看文档的某个部分时,应执行通知“操作”。一般来说,如果某个元素被点击了

【问题讨论】:

  • 所以您想将其他人网站上的页面发送给收件人并检查他们是否查看过?如果这就是您所追求的,MailChimp 之类的电子邮件服务将能够为您提供帮助。
  • @BFDatabaseAdmin 我会检查一下。谢谢你。我的错-我没有提到,如果查看了文档的某个部分,则应该执行此通知“操作”。所以,一般来说,假设是否点击了某个元素)

标签: php html ajax


【解决方案1】:

通常的解决方案是“网络错误”。您在页面上放置了一个 1 像素的图像,其src 指向您的服务器。在 URL 中包含一个唯一 ID,例如:

<img src="http://yourserver/images/empty.jpg?id=123456789" height="1" width="1">

然后您可以扫描您的日志以查看该图像是否被访问,并使用id 参数将其与特定收件人相关联。您应该禁用缓存,以便他们每次打开文档时都必须重新下载图像。

【讨论】:

  • 如果我动态添加一个img元素(在某些事件之后),效果应该是一样的吧?
  • 添加一个带有背景图像集的类会做同样的事情吗?
  • @bo。它可能必须是内联样式,因为大多数邮件阅读器会忽略 CSS,但这个想法可能会奏效。
【解决方案2】:

我认为使用 jQuery 跨域设置 AJAX 调用应该可以正常工作

$.ajax({
    crossDomain:true,
    type: "POST",
    url: "http://domain.com/ajax.php",
    data: {
        var1: var1,
        var2: var2
    },
    success: function(data){
    }
});

http://api.jquery.com/jquery.ajax/

【讨论】:

  • 听起来不错。不使用 jQuery 可以执行吗?
  • 那么你应该将你的服务器设置为支持跨域资源共享并使用简单的JS发出HTTP请求
  • @bo。使用普通的XMLHttpRequest。 jQuery 只是一个使代码更短的便利库。
猜你喜欢
  • 2011-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多