0

下面是 index.php 文件中的一个 GetWidth 和 GetHeight 函数的工作原理。(它们不是最终函数,所以不重要。)重要的部分由 /* IMPORTANT HERE */ 标记,我想要完成的是传递我使用 jQuery Window Portal Height / Width 获得的变量并将其传递给 PHP 脚本换句话说,当我从 GetWidth() 获取值时,它应该转到 w=120 或将 120 值替换为当前宽度和高度相同的值。如有语法错误请忽略。

我只想弄清楚如何将值从 jQuery 传递到 PHP 脚本。同样在将来我想添加 resize 方法,以便在调整窗口大小时值将是动态的。

<html>
    <head>
        <title></title>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script>
            $(window).resize(function () {
      $('#msg').text('Browser (Width : ' 
                         + $(window).width() 
         + ' , Height :' + $(window).height() + ' )');
        });

        $(document).ready(function() {
       // DOCUMENT READY

       function GetWidth() {
            if (self.innerWidth) {
                    return self.innerWidth;
                }
                else if (document.documentElement && 
                             document.documentElement.clientHeight) {
                    return document.documentElement.clientWidth;
                }
                else if (document.body) {
                    return 0;
                }
                return x;
            }

            function GetHeight() {
                if (self.innerHeight) {
                    y = self.innerHeight;
                }
                else if (document.documentElement && 
                           document.documentElement.clientHeight) {
                    return
                                document.documentElement.clientHeight;
                }
                else if (document.body) {
                    return 0;
                }
                return y;
            }





// This is for when it first loads.                                
$('#TEXT').text('W: ' + $(window).width() + ' , H:' + $(window).height() + y);

// This is for when window gets resized.
$(window).resize(function () {
    $('#TEXT').text('W: ' + $(window).width() + ' , H:' + $(window).height());
});

  // DOCUMENT READY    
  });
 </script>
 </head>

 <body>

Info Area:<br>
<div id="TEXT"></div>

/* IMPORTANT HERE */
<!-- img src="timthumb.php?src=URL...image.jpg&h=180&w=120" -->
/* IMPORTANT HERE */

</body>
</html>
4

3 回答 3

0

您不能将 jQuery 或 JS 变量传递给 PHP 脚本。基本上,PHP 脚本在服务器级别执行,只有 HTML、JS 和 CSS 将返回到浏览器。然后浏览器将呈现它。因此,当浏览器执行您的 JS 方法时,PHP 脚本已经执行。

你可以使用 Ajax。

于 2013-01-08T19:01:18.813 回答
0

您不能将值从 jQuery 传递到 PHP,因为 PHP 是一种服务器端语言,而 jQuery 是一种客户端语言。但是有一种方法可以将数据从客户端传递到服务器端,即AJAX

https://softwareengineering.stackexchange.com/questions/171203/what-are-the-difference-between-server-side-and-client-side-programming

为什么 PHP 脚本不能在 Web 浏览器中工作?

http://www.scriptingok.com/tutorial/Server-side-vs-Client-side

于 2013-01-08T19:08:05.287 回答
0

欢迎来到stackoverflow!
问题是 php 正在服务器中编译,浏览器从服务器接收 html 和 javascript 文件,
然后您的浏览器编译您的 javascript 和 html 代码
,因此 javascript 无法更改 phpcode
您可以使您的 html whit javascript 像这样:

image = new Image(); 
image.src = "timthumb.php?src=URL...image.jpg&h="+ hgt + "&w=" + wth;

image.onLoad=function(){ $("img").attr({src: image.src}); }
于 2013-01-08T19:23:21.610 回答