【问题标题】:Enable phone call functionality on change event (jQuery)在更改事件上启用电话呼叫功能(jQuery)
【发布时间】:2012-11-03 07:43:57
【问题描述】:

我正在尝试在更改事件(HTML <select> 标记)上启用电话呼叫功能,以便引用适当的 "tel:" 值。

我使用默认浏览器在 Android (版本 2.24.0 上运行测试:我没有得到想要的效果。

下面是我的代码:

HTML

<select class="call-us-options">
    <option value="">Select a branch:</option>
    <option value="branch-a">Branch A</option>
    <option value="branch-b">Branch B</option>
    <option value="branch-c">Branch C</option>
</select>
<a class="phone branch-a" href="tel:(22) 2222-222" title="Branch A">Branch A</a>
<a class="phone branch-b" href="tel:(33) 3333-3333" title="Branch B">Branch B</a>
<a class="phone branch-c" href="tel:(44) 4444-4444" title="Branch C">Branch C</a>

jQuery

$('.call-us-options').on('change', function() {
    if($(this).val()) {
        alert($('.'+$(this).val()).html());
        $('.'+$(this).val()).trigger('click');
    }
});​

这里是 JSFiddle:http://jsfiddle.net/CZ3WF/1/

有什么有效的方法可以实现吗?

【问题讨论】:

  • 您是否有与您的a 元素关联的函数来注册点击事件?

标签: jquery html href phone-call tel


【解决方案1】:

您是否尝试使用&lt;select&gt;onChange 事件来处理window.location = "tel:(44) 4444-4444"(无论选择索引对应的锚中的数字是多少)?

编辑:

click() 只会触发 javascript 事件处理程序,实际上不会转到该 URL。我不确定这是否可行,但您可以尝试一次window.location

【讨论】:

  • @FredWuerges 感谢您提供工作示例。因为很少有人通过给出工作示例来标记接受。
【解决方案2】:
$('.call-us-options').on('change', function() {

        window.location.href = $('.'+$(this).val()).attr('href');

});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-25
    • 1970-01-01
    • 2018-01-15
    • 1970-01-01
    相关资源
    最近更新 更多