【问题标题】:How to launch Skype without being redirected by window.location in Javascript?如何在不被 Javascript 中的 window.location 重定向的情况下启动 Skype?
【发布时间】:2015-06-01 11:43:40
【问题描述】:

我不确定这是否可能,或者我只是做错了。 我想要做的是调用一个函数来检查数据库以获取 Skype id(用户 B)并验证用户 A 是否登录。如果用户 A 登录并且找到用户 B 的 Skype ID,则启动 Skype。如果没有,什么都不会发生。听起来很简单……

当用户(用户 A)单击表单上的图像按钮时调用函数。

例如在 start.html 上

<a href="#" onclick="skypeme('var1','var2'); return false"><img src="images/chat.png" ></a>

skypeme 是一个类似这样的 javascript 函数:

<script>
function skypeme(a,b) {
    window.location = 'skypeme.cfm?a=' + a + '&b=' + b;
    }
</script>

调用 skypeme.cfm 进行所有数据库检查:

check the database and see if user A is login.... 
if user A is login, check if user B has skype ID
       if skype id is found for user B do this
           <script language="javascript">
           window.location = 'skype:#skype_id#?chat';
           </script>
       else do nothing 
else user A is not login
    <script language="javascript">
    signin('#a#','#b#');
    </script>

skypeme.cfm 正在完成它的工作,并在一切正常后启动 Skype。然而,问题是当用户点击 start.html 上的按钮时,他会被定向到一个空白页面 skypeme.cfm(skypeme.cfm 只显示检查)然后Skype启动。

有没有什么办法可以让用户点击 start.html 上的聊天按钮时,他会留在 start.html 页面上,而 skype.cfm 检查数据库并使用 javascript 代码启动 Skype?这可能很简单,但我无法做到这一点。任何帮助表示赞赏。提前致谢。

【问题讨论】:

  • 您想对 skypeme.cfm 使用 Ajax 请求,并且仅在该请求成功完成后才执行重定位
  • 您的问题在 skypeme.cfm 中显示了一个 window.location。这不是你想要的吗?另外,更简单的方法将涉及更少的 js。为什么没有从html页面到coldfusion页面的正常锚标签?
  • @duncan 你是怎么做到的?此外,我真的不希望用户被重定向到“重新定位”,而是留在 start.html 页面并启动 Skype。
  • @DanBracuk skypeme.cfm 负责启动 Skype。但是当调用 skypeme 时,用户会被定向。我不希望用户被重定向。锚标记还将用户重定向到我不想要的 skypeme.cfm。 skypeme 只是用于检查数据库并启动Skype。用户应该停留在 start.html 页面上并在后台运行 skypeme。顺便说一句,我也尝试将 skypeme 转换为 cffunction,但显然我无法在 cffunction 内执行 javascript 启动 skype。
  • 我在谷歌上搜索并找到了这个:stackoverflow.com/questions/2841676/…也许它会帮助你。

标签: javascript jquery html coldfusion skype


【解决方案1】:

用于重定向到链接

window.location = 'skype:' + phone + '?call';

【讨论】:

    【解决方案2】:

    不要将window.location 指向skypeme.cfm,而是将其加载到iframe 中(您可以将iframe 动态附加到文档,或者只是将其更改为src)。将 iframe 重定向到 skype: uri 也同样有效。

    【讨论】:

      猜你喜欢
      • 2017-07-06
      • 1970-01-01
      • 2019-08-27
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 2017-02-16
      • 1970-01-01
      相关资源
      最近更新 更多