此jquery函数在单击按钮时为我提供宽度,但在页面加载时如何获得宽度。我还需要在php文件中使用with变量。 怎么能做到这一点?
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<button id="getp">Get Paragraph Width</button>
<button id="getd">Get Document Width</button>
<button id="getw">Get Window Width</button>
<div> </div>
<p>
Sample paragraph to test width
</p>
<script>
function showWidth( ele, w ) {
$( "div" ).text( "The width for the " + ele + " is " + w + "px." );
}
$( "#getp" ).click(function() {
showWidth( "paragraph", $( "p" ).width() );
});
$( "#getd" ).click(function() {
showWidth( "document", $( document ).width() );
});
$("#getw").click(function() {
showWidth( "window", $( window ).width() );
});
</script>
<?='this does not work '.$_GET['w'];?>
</body>
</html>
答案 0 :(得分:0)
您可以遵循以下结构;
<script>
var w = '400';
</script>
<?php $w = "<script>document.write(w)</script>"?>
答案 1 :(得分:0)
你做错了。
无论如何,添加此脚本
<script>
function showWidth( ele, w ) {
$( "div" ).text( "The width for the " + ele + " is " + w + "px." );
window.location =window.location + '?w='+w;
}
</script>
使用$.ajax
发送数据。
答案 2 :(得分:0)
<input type="hidden" id="hidtext" name="hidtext" value="<?php if(isset($_GET['length'])) echo $_GET['length']; ?>"/>
<?php
if(isset($_GET['length']))
{
if($_GET['length'] > somevalue)
{
include('large_menue.php');
}
else
{
include('small_menue.php');
}
}
?>
<script type="text/javascript">
if( $("#hidtext").val() == "")
{
$("#hidtext").val($(document).width());
window.location.replace("thispage.php?length="+$(document).width());
}
</script>
说明:
打开thispage.php
后,它会获取文档长度,并通过附加url参数将页面重定向到同一页面。
如果设置了url参数length
,则其值将存储在hidtext
中。
如果hidtext
有值,则页面找不到宽度并重新加载。
由于url参数具有文档宽度的值,您可以检查它并包含适当的文件
答案 3 :(得分:0)
可能是我不理解的错误和不必要的代码,但这项工作。 :)
<html>
<head>
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<button id="getw" style="visibility:hidden;"></button>
<?if(!$_REQUEST['width_checked']) {?>
<script>
function showWidth( ele, w ) {
window.location =window.location + '?width_checked=1&w='+w;
}
$("#getw").click(function () {
showWidth("window", $(window).width());
$('body').load('', function () {});
}).click(); //show the window width on page load
</script>
<?}?>
</body>
</html>