首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在agiletoolkit (又称ATK4)中获取jquery变量?

如何在agiletoolkit (又称ATK4)中获取jquery变量?
EN

Stack Overflow用户
提问于 2011-09-17 10:26:48
回答 1查看 289关注 0票数 1

我需要使用lightweight php framework with jquery,即ATK4来获取浏览器的窗口高度和宽度

要获取此内容的javascript应为

代码语言:javascript
复制
 $(window).height();
 $(window).width();

由于agiletoolkit与jquery集成在一起,我认为应该可以用下面这样的东西来获得它

代码语言:javascript
复制
         $height=$p->js()->univ()->_selectorWindow()->height();

但是这并不起作用,相反,当我传递要使用的$height变量时,在HTML源中我得到了以下结果。

代码语言:javascript
复制
 'height':$(window).univ().height(),'width':$(window).univ().width()

并且它根本不显示该元素

我希望能够调用jqplot来将图形的宽度设置为特定页面上用户浏览器的全宽。为此,我需要传递一个参数width:NNN,其中NNN是像素数。据我所知,jqplot不支持参数作为百分比,所以我不能说宽度:100%。此外,如果我在页面上设置div并添加图形,它也会忽略div的大小,只创建一个400x300像素的小图形。

我创建了一个插件来使用atk4中的jqplot,但这仍然是我需要解决的问题之一。我可以传递一个高度和宽度作为参数,没有问题,但如果没有指定参数,我希望它默认为全屏大小。

有谁能推荐正确的语法来获取这些值吗?蒂娅。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-17 16:11:50

你应该明白的是,"$p->js()->_selectorWindow()->height();“实际上会被翻译成"$( window ).height();”--但是你只能在客户端得到窗口的宽度。

所以,如果你想在你的代码中获得窗口的高度,你只能通过使用ajax请求来实现,它的实际高度是从前台发回的。

请重新表述您的问题,以便清楚您需要身高的原因,这样我就可以提出最佳的解决方法。

后端和前端互通的示例:

将其粘贴到page/test.php中并打开http://example/test查看实际操作

代码语言:javascript
复制
class page_test extends Page {
    function init(){
        parent::init();

        $b=$this->add("Button");
        $b->set("Get Width");
        $b->js("click")->univ()->ajaxec($this->api->getDestinationURL(), array("width" => $this->js(true)->_selectorWindow()->width()));
        $v=$this->add("View_HtmlElement")->setElement("div")->set("Click button to get width of the window");
        if ($w = $_POST["width"]){
            $v->js(null, $v->js()->html("Width: " . $w))->univ()->alert("Width: " . $w)->execute();
        }
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7452047

复制
相关文章

相似问题

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