【问题标题】:Calculating the width of an element?计算元素的宽度?
【发布时间】:2016-08-16 02:51:08
【问题描述】:

我正在尝试获取 div 的宽度,以便可以在 php 中回显它。

谁能给我一个指示如何实现这一目标?

基本上,我想开发一个“响应式”<div>,它将在响应式模板中的 php 中显示父级<div> 的宽度。显然,在不同的窗口大小下,响应式模板会改变宽度大小,我只需要找到一种方法来输出这个宽度并在 php.ini 中回显它。 JQuery 已经在后台运行,所以我可以利用它...

只需要一点方向

【问题讨论】:

  • 您无法在 PHP 中获取 div 的宽度,因为尚未呈现 HTML。您只能使用 client-side 语言 - JavaScript 获取渲染元素的宽度。
  • PHP 是服务器端脚本语言。你不能通过 PHP 获得 div 的宽度。它可以通过 jquery 或 javascript 来完成。你能提供代码,以便我可以给你解决方案。
  • @user3313268 show 使用你想得到宽度的div的代码
  • 谢谢大家。基本上,我想开发一个“响应式”
    ,它将在响应式模板中显示 php 中父级
    的宽度。显然,在不同的窗口大小下,响应式模板会改变宽度大小,我只需要找到一种方法来输出这个宽度并在 php.ini 中回显它。 JQuery 已经在后台运行,所以我可以利用它……只需要一点方向

标签: php html width


【解决方案1】:

您的 PHP 代码将在服务器端运行。您只能在生成 DOM 后确定宽度客户端(例如使用 javascript)。您可以使用纯 javascript 这样做

document.getElementById("yourDivId").offsetWidth

或使用 jQuery

$("#yourDivId").width()

如果您确实需要 PHP 代码中可访问的宽度,则需要发送一个 post 请求(ajax 或 full),以便 PHP 可以拥有该值。

【讨论】:

    【解决方案2】:

    您不能这样做,因为 PHP 在服务器上运行,用户将通过他们的浏览器访问该页面,而浏览器通常是另一台计算机。用户在地址栏中输入网址并按回车后,将向所请求页面的服务器发送 GET 请求。服务器将运行服务器端脚本(例如在 PHP 中),生成页面结构并将该结构发送到客户端,即浏览器。当服务器将结构发送到浏览器时,PHP 代码已经成功完成,但结构尚未显示,因此您的 divs 那时还不存在,更不用说有任何 width 值。

    因此,您想要实现的行为在 PHP 中是不可能实现的,因此您应该以不同的方式来实现。我可以用 jquery 推荐 Javascript 吗?例如,如果您的外部div 具有id="a",内部div 具有id="b",那么您可以在Javascript 中执行以下操作:

    $(function() {
        $("#a").resize(function() {
            $("#b").text($(this).width());
        });
    });
    

    在这里,您有一个function,它将在加载事件时运行,然后将resize 事件注册到外部div,这将根据@987654332 更改内部div 的内部文本@ 外层div

    【讨论】:

      猜你喜欢
      • 2015-11-14
      • 2015-12-16
      • 1970-01-01
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      • 2020-05-21
      • 2018-05-24
      相关资源
      最近更新 更多