1

Ajax リクエストを介して PHP 変数で画面幅を取得しようとしています。

JS ファイル:

function screen() {
    var xmlhttp;
    var sWidth=window.screen.width;
    if(window.XMLHttpRequest) {
        xmlhttp=new XMLHttpRequest();
    } else {
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.open("GET", "screen.php?width="+sWidth, true);
    xmlhttp.send();
}
window.onload=screen();

PHP ファイル:

<?PHP 
$screen=$_GET["width"];
echo $screen;
?>

しかし最後に、未定義の「幅」が表示されます。ヘルプ

4

3 に答える 3

1
var sWidth = window.screen.width;
alert("sWidth is: " + sWidth);
var xhttp = new XMLHttpRequest();
var url = "screen.php?width=" + sWidth;
xhttp.open("GET", url, true);
xhttp.onload = function() { 
    alert("Result: " + xhttp.responseText); 
};
alert("Sending: " + url);
xhttp.send(null);

うまくいくようです。FFでもIE9でも問題なしhttp://jsfiddle.net/JsHaw/1/

于 2013-08-01T11:55:49.520 に答える
0

これを試して

var sWidth=window.innerWidth;

ドキュメントはこちら

それが役立つことを願っています

于 2013-08-01T11:48:55.717 に答える
0

これはうまくいくはずです:

function screen() {
    var xmlhttp;
    var sWidth=window.innerWidth;

    if(window.XMLHttpRequest) {
        xmlhttp=new XMLHttpRequest();
    } else {
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.open("GET", "screen.php?width="+sWidth, true);
    xmlhttp.send();
}
window.onload=screen();
于 2013-08-01T12:15:48.757 に答える