You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Qualtrics中用Javascript修改元信息问题检测手机尺寸?

在Qualtrics中通过JS检测手机物理尺寸实现筛选

可以通过自定义JavaScript结合Qualtrics的问卷逻辑实现这个需求,核心思路是通过JS计算屏幕物理尺寸,再用筛选逻辑判断受访者是否符合资格,具体步骤如下:

1. 创建隐藏问题存储尺寸数据

  • 在问卷中添加一个文本输入问题,在问题设置里勾选「隐藏问题」,用来存储计算出的手机尺寸或资格判定结果。记好这个问题的QID(比如QID123),后续代码会用到。

2. 编写自定义JS代码

在问卷的「Look & Feel」→「Advanced」→「Custom JavaScript」中,或者直接在隐藏问题的「Add JavaScript」面板中添加以下代码:

Qualtrics.SurveyEngine.addOnload(function() {
    // 获取屏幕CSS像素宽高
    const cssWidth = window.screen.width;
    const cssHeight = window.screen.height;
    // 获取设备像素比(物理像素与CSS像素的比例)
    const dpr = window.devicePixelRatio || 1;
    // 计算物理像素宽高
    const physicalWidth = cssWidth * dpr;
    const physicalHeight = cssHeight * dpr;
    // 计算对角线物理像素
    const diagonalPixels = Math.sqrt(Math.pow(physicalWidth, 2) + Math.pow(physicalHeight, 2));
    
    // 估算物理尺寸(英寸):多数手机PPI在320-400之间,这里取360作为近似值,可根据目标机型调整
    const screenSizeInches = (diagonalPixels / 360).toFixed(1);
    
    // 将结果存入隐藏问题(替换QID123为你的实际问题ID)
    document.getElementById('QR~QID123').value = screenSizeInches;
    
    // 直接执行筛选逻辑:示例为仅允许6英寸及以上设备参与
    if (parseFloat(screenSizeInches) < 6) {
        // 标记为不符合资格
        Qualtrics.SurveyEngine.setEmbeddedData('eligible', 'no');
        // 跳转到不符合资格的页面(替换为你的实际页面URL)
        window.location.href = 'https://your-qualtrics-ineligibility-url';
    } else {
        Qualtrics.SurveyEngine.setEmbeddedData('eligible', 'yes');
    }
});

3. 设置问卷分支逻辑

  • 进入问卷的「Survey Flow」,添加分支逻辑:
    • 根据嵌入式数据eligible的值,将no的受访者引导至专属的「不符合资格」结束页面,yes的受访者继续完成后续问卷。

关键注意事项

  • 由于不同厂商手机的PPI(每英寸像素数)存在差异,估算结果会有小幅误差,建议针对目标测试机型调整代码中的PPI数值(比如高端机型可设为400-450)。
  • 务必在多款主流手机上测试代码,验证尺寸计算的准确性,避免误筛。

内容的提问来源于stack exchange,提问作者Con Des

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 20:24:31