Javascript 屏幕大小检测后的coldfusion

Javascript 屏幕大小检测后的coldfusion,javascript,coldfusion,screen,detection,responsive-design,Javascript,Coldfusion,Screen,Detection,Responsive Design,我正在制作一个响应迅速的网站,我希望能够使用javascript获得屏幕大小,然后根据屏幕大小呈现coldfusion include。大概是这样的: if (screen.width <= 700) { <cfinclude template="file1.cfm"> } else { <cfinclude template="file.cfm"> } if(screen.width您尝试执行的操作是不可能的。JavaScript是客户端语言

我正在制作一个响应迅速的网站,我希望能够使用javascript获得屏幕大小,然后根据屏幕大小呈现coldfusion include。大概是这样的:

if (screen.width <= 700) {
     <cfinclude template="file1.cfm">
} else {
     <cfinclude template="file.cfm">
}

if(screen.width您尝试执行的操作是不可能的。JavaScript是客户端语言,ColdFusion是服务器端语言。您不能在JavaScript块中执行cfinclude,因为该代码将在浏览器中执行,而不是在服务器上执行。

JavaScript是客户端。ColdFusion是服务器端。如果要混合使用这两种语言,您需要Ajax。您应该尝试更像使用jQuery for easy Ajax的方法:

// LOOK AT THE SCREEN WIDTH
if (screen.width <= 700) {
     // LOAD THE PAGE INTO THE CORRECT SIZED DIV
     $("#YourDiv").load("ColFusionFile-01.cfm");
} else {
     // LOAD THE PAGE INTO THE CORRECT SIZED DIV
     $("#YourDiv").load("ColFusionFile-02.cfm");
}
//查看屏幕宽度

如果(screen.width您应该根据屏幕大小使用CSS媒体查询和样式表进行不同的显示渲染。这将允许您为两种显示都使用一个CF页面。无需AJAX

关于媒体查询的W3C文档:

关于“响应式网页设计”的精彩文章:


下面是一些使用这种技术的站点的极好示例:

我知道代码不起作用,但我已经尝试通过.ajax()加载cfm文件但是如果在我想要包含的文件中有第二个包含文件,那么这也不起作用,所以我想知道是否有其他方法。实际上,这是可能的。看看我的答案,看看你是否不同意。meijiOrO-在我看来,你有三个可行的选择。1.使用Evik的解决方案,包括重定向。2.使用媒体查询-3.使用Application.cfc中的某些内容,以检查用户代理,并设置一个变量以确定要包含的文件。我知道,这不会考虑屏幕大小,但根据您的其他要求,此方法可能比其他方法更能满足您的要求。以下是有关如何执行此操作的更多信息,我不想重定向。我只想p返回模板。我也尝试使用.load(),但包含文件中有mysql查询和其他包含和变量。根据问题的具体措辞,“使用javascript获取屏幕大小,然后根据屏幕大小呈现coldfusion包含”,这是迄今为止最接近的答案。为了确定屏幕大小,页面必须完成并呈现,以便JS可以激发以获得大小。然后,根据大小,它向相应的CF文件发出新请求。当然,它不作为包含,但将调用正确的CFM文件。如果该文件需要执行其他操作,很好,在URL上向它传递执行这些操作所需的信息。file.cfm和file1.cfm是否将HTML或JavaScript作为其输出内容?
// LOOK AT THE SCREEN WIDTH
if (screen.width <= 700) {
     // SEND THE VISITOR TO THE CORRECT SIZED PAGE
     window.location.href = "ColFusionFile-01.cfm"
} else {
     // SEND THE VISITOR TO THE CORRECT SIZED PAGE
     window.location.href = "ColFusionFile-02.cfm"
}