首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kindle实验浏览器给出了网页中包含的所有javascript在7小时前的错误时间--如何抵消?

Kindle实验浏览器给出了网页中包含的所有javascript在7小时前的错误时间--如何抵消?
EN

Stack Overflow用户
提问于 2019-11-06 22:50:34
回答 1查看 409关注 0票数 2

我通过他们的“实验浏览器”将旧火把回收到小型气象站。我创建网页,显示日期和时间,以及我放入iframes中的天气数据,以便与Kindle浏览器一起使用。在我遇到Kindle浏览器的奇怪问题之前,我一直工作得很好。

这是我在一个定制的iframe内用于天气的东西。

https://forecast.io/embed/#lat=39.742043&lon=-104.991531&name=Denver

我的第一条线索是这个日期的时间,我以前在其他Kindle上成功使用过的javascript片段在+7小时前就关闭了。换句话说,当它是下午4时,浏览器告诉页面中的所有javascript内容,它的呈现是11点,以此类推。

我反复检查了Kindle的时间,结果是正确的。然后,我试图通过手动更改整个Kindle的时间-7小时来抵消时间,但它并没有改变浏览器的问题。

最后,我调整了日期和时间javascript片段,以抵消7小时的时间来修复时间的显示。

然而,Kindle的浏览器也抵消了我的iframe提前7个小时的天气,这也导致了iframe的天气提前了7个小时。它会导致天气代码在下午5点后变得不稳定,因为浏览器会让它相信这是第二天(提前7个小时)。我无法直接访问任何代码来抵消时间,所以我需要以某种方式抵消网页或服务器上的7个小时。

我尝试用各种.htaccess TZ时区更改SetEnv文件中的时区,但它对SetEnv的及时输出和天气没有影响。

是否有一种方法可以使用javascript来强制页面中的所有javascript来抵消浏览器报告的时间?还是有其他方法来解决这个问题?

我很困惑。

更新/编辑-

从来没有找到答案,所以我创建了一个时间敏感的javascript,我抵消了7个小时,以覆盖不同的日子之上的天气图。以下是我使用的代码片段,以防有人好奇。我旋转了所有的东西,因为出于某些原因,Amazon现在也不允许您在Voyage上以景观模式查看浏览器,所以我只在它的一侧创建了整个页面。

从丹佛时间下午5点到午夜,覆盖层处于活动状态。如果您在代码中记录了0到6的时间,那是因为我不得不将时间倒转到7小时,直到第二天开始。我还不得不把日子倒转,因为Kindle浏览器奇怪的时间偏移导致了天气预报的倒退。这是草率和可以流线型,但它的工作。

CSS -

代码语言:javascript
复制
p {
  white-space: nowrap;
  font-size: 70px;
  word-spacing: 91px;
  transform: rotate(90deg);         
}

jQuery/Javascript -

代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
var d = new Date();
if(d.getHours() >= 0 && d.getHours() <= 6 ){
/* Greater than or equal to 5PM (5PM+7=midnight (0) and less than or
equal to 11PM+7=6AM (6) */
$(".amazonworkaround").show();
}
else {  
     $(".amazonworkaround").hide();
}   

});
</script>

还有-

代码语言:javascript
复制
<script>
  var d = new Date();
  var weekday = new Array(7);
  weekday[0] = "Now Sun Mon Tue Wed Thu Fri Sat";
  weekday[1] = "Now Mon Tue Wed Thu Fri Sat Sun";
  weekday[2] = "Now Tue Wed Thu Fri Sat Sun Mon";
  weekday[3] = "Now Wed Thu Fri Sat Sun Mon Tue";
  weekday[4] = "Now Thu Fri Sat Sun Mon Tue Wed";
  weekday[5] = "Now Fri Sat Sun Mon Tue Wed Thu";
  weekday[6] = "Now Sat Sun Mon Tue Wed Thu Fri";

  var n = weekday[d.getDay()];
  document.getElementById("dayfix").innerHTML = n;
</script>

最后-

代码语言:javascript
复制
<div class="amazonworkaround" style="position: absolute; top: 0px; left: 625px;
width: 85px; height: 1800px; background-color: white; padding-left: 0px;
z-index: 101;"><p id="dayfix"></p></div>
EN

回答 1

Stack Overflow用户

发布于 2019-12-23 14:18:16

你试过重新启动你的Kindle吗?我的人都没有这个问题。

我尝试用各种.htaccess TZ时区更改SetEnv文件中的时区,但它对SetEnv的及时输出和天气没有影响。

这是因为JavaScript时区完全是客户端设置的。

我旋转所有东西,因为出于某些原因,Amazon现在也不允许您在Voyage上以景观模式查看浏览器

如果你能破解你的kindle,我真的推荐WebLaunch,它允许你在没有地址栏的情况下显示网页,也有一个景观模式(请注意,Kindle的浏览器不会喜欢这个模式,认为它仍然处于纵向模式,这会在响应性的网页上引起问题,但是可以用下面的CSS修复)

代码语言:javascript
复制
html, body {
    margin: 0;
    width: 934px;
    height: 700px;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58739586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档