javascript - 为特定的信息亭计算机使用单独的 CSS?

标签 javascript php html css

我正在尝试帮助遇到网站在触摸屏自助服务终端浏览器上正常显示的问题的人。

他们目前有一个网站,该网站运行基于 Lithium 框架构建的自定义 CMS 驱动站点,该框架非常适合他们并满足他们的需求。然而,他们想要做的是通过拥有一个触摸屏信息亭来扩展这一点,以便公众可以在访问他们的同时查看网站,而不是像往常一样通过互联网。

问题是,该站点可以在台式机和移动设备上使用,但尝试使用触摸屏却具有挑战性,因为一些文本/链接等非常小。我正在寻找的是一种让一台机器以更有用的方式显示网站的方法。

在测试期间,我沿着开发一个单独的 CSS 工作表的方向前进,它通过使用更友好的触摸交互来解决其中的一些问题。它似乎工作正常。

我苦苦挣扎的地方是如何让样式表只应用到那台计算机而不是所有连接的人?目前,我使用了一些 php/javascript 来检查请求机器的 IP 地址,如果它与自助服务终端的 IP 地址相匹配,那么它会在该部分中包含一个指向触摸友好 CSS 文件的单独链接。没问题-但是,我不确定这在“野外”是否实用。

它将驻留的互联网连接没有静态 IP 地址,因此我不能保证保持不变。我可以使用另一个技巧吗?我确实想知道匹配主机名,但据我所知,没有办法获取请求计算机的主机名。

我可以完全访问服务器和信息亭。服务器是标准的 LAMP 设置,Kiosk 是 Windows 8.1 机器,带有单触摸屏 (ELO),运行 riro 的 Metro 应用 Kiosk Browser。

最佳答案

因为您可以使用 php 并可以访问信息亭计算机,所以我会使用信息亭专用的配置文件。

  1. 创建一个文本文件并将其保存为例如 kiosk.txt。

  2. 在 kiosk.txt 中放置一行文本以测试它是否存在。

示例:售货亭

  1. 检查 index.php 文件以确定 kiosk.txt 文件在客户端计算机上是否存在正确的值。

PHP 看起来像这样放置在 index.php 文件的头部部分。

示例 PHP:

       //get the contents of the kiosk.txt php file
       //you will have to use the path that you saved kiosk.txt to below
       $kiosk = file_get_contents("kiosk.txt");




       //place a check to see if the kiosk.txt file contains the word kiosk
       if(strpos($kiosk,"kiosk") !== false){//begin if then else

       //echo the path to your css file to load it for the kiosk specifically
       //make sure you replace the href value with correct style sheet path below
       echo "<link href='http://pathToYourStyleSheet.css' rel='stylesheet'>"

       }
       else{

            //echo the non kiosk stylesheet

       }//end if then else

或者,您可以将 http get 变量传递给索引文件,这可能会更好,因为您是从另一台计算机而不是 kiosk 提供 php。

使加载索引文件的快捷方式或链接看起来像这样:

http://kiosk.com?kiosk=true

然后在您的 index.php 文件中检查 kiosk get 变量是否为真

   //get the kiosk variable value
   $kiosk = $_GET["kiosk"];


       //check to see if its true       
       if($kiosk === "true"){//begin if then else

       //echo the path to your css file to load it for the kiosk specifically
       //make sure you replace the href value with correct style sheet path below
       echo "<link href='http://pathToYourStyleSheet.css' rel='stylesheet'>"

       }
       else{

            //echo the non kiosk stylesheet

       }//end if then else

关于javascript - 为特定的信息亭计算机使用单独的 CSS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27399343/

相关文章:

php - 从路由号码获取银行名称

php - 如何在 PHP 和 CSS 中创建 3 列?

jquery - CSS Grid 无限滚动和动态内容

javascript - OpenFL阶段如何强制__focusObject到另一个元素

javascript - 在 jquery 中鼠标悬停时动画 div 的外观

javascript - 为什么此动画不显示以阻止不起作用?

php - 比较运算符 Sql 查询与 php

javascript - D3 V6 中嵌套和组功能的等效组代码是什么

phpwebsockets yii 实现

javascript - 当其中一个字段更新时刷新其他输入字段。使用 Angularjs(附带 Plunker)