屏幕大小检测后的冷融合

coldfusion after screen size detection

本文关键字:融合 检测 屏幕      更新时间:2023-09-26

我正在制作一个响应式网站,我希望能够使用javascript来获取屏幕大小,然后根据屏幕大小渲染coldfusion include。类似这样的东西:

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

我也尝试过通过.ajax()加载,但当我在中的cfm文件中有include文件时,我就被卡住了。

JavaScript是客户端。ColdFusion是服务器端。如果您想将两者混合使用,您需要Ajax。您应该尝试使用jQuery来实现简单的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");
}

或者,你可能想重定向它们:

// 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"
}

您应该使用CSS媒体查询和样式表来根据屏幕大小进行不同的显示渲染。这将允许您在两个显示器上都有一个CF页面。不需要AJAX。

W3C关于媒体查询的文档:http://www.w3.org/TR/css3-mediaqueries/

关于"响应式Web设计"的精彩文章:http://www.alistapart.com/articles/responsive-web-design/

以下是一些使用这种技术的网站的精彩示例:http://mediaqueri.es/

您想要做的事情是不可能的。JavaScript是客户端语言,ColdFusion是服务器端语言。您不能在JavaScript块中执行cfinclude,因为该代码将在浏览器中执行,而不是在服务器上执行。