【问题标题】:conditional inside td tag to perform php scripts在 td 标记内有条件地执行 php 脚本
【发布时间】:2018-03-11 09:38:33
【问题描述】:

我尝试执行两个不同的脚本,具体取决于它是否 IE11

考虑下面的伪代码

<td>
  if IE11 
    perform  IE11_Code
  else
    perform  other_code
  end if
</td>

我该如何存档。

检测 IE11 显然是这样工作的。

var isAtLeastIE11 = !!(navigator.userAgent.match(/Trident/) && !navigator.userAgent.match(/MSIE/));

但是在条件句中使用这个让我感到困惑。

编辑:忘记我想在某处使用 php 的事实。

【问题讨论】:

  • PHP 在服务器上运行,Javascript 在浏览器上运行,它们不能同时运行。
  • 是的,我明白了。它处于创建阶段。一切正常,但对于每个浏览器,我需要执行不同的行,仅此而已。
  • 所以你必须在服务器上检测它或者你必须在客户端检测它,而不是通过 Ajax 调用来获取它。

标签: javascript html


【解决方案1】:

需要在服务器端使用HTTP-HeaderUser-Agent检测浏览器,这与在JavaScript中使用navigator.userAgent时在客户端使用的基本相同。

我不是 php 专家,但它应该像这样工作:

<?php
  $userAgent = $_SERVER['HTTP_USER_AGENT'];
  if(preg_match('/Trident/', $userAgent) ) {
    ...
  }
?>

【讨论】:

  • “条件注释只能在客户端的 Internet Explorer 中使用”——它们在 IE11 中不起作用,问题也没有提到它们。
  • @Quentin 你说得对,因为“条件”这个词和 peusdo 代码,我不知何故想起了条件 cmets :)
  • 不知道你可以从php获取用户浏览器,谢谢老兄。
猜你喜欢
  • 1970-01-01
  • 2022-08-23
  • 2015-04-17
  • 1970-01-01
  • 2013-09-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-07
相关资源
最近更新 更多