在更改事件(jQuery)上启用电话呼叫功能

时间:2012-11-14 18:38:39

标签: jquery html href phone-call tel

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

我使用默认浏览器对 Android (版本 2.2 4.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/

有没有有效的方法来实现这一目标?

2 个答案:

答案 0 :(得分:7)

您是否使用window.location = "tel:(44) 4444-4444"的{​​{1}}事件尝试了onChange(与selectIndex相对应的锚中的数字)?

编辑:

<select>只会触发javascript事件处理程序,并且实际上不会转到该URL。我不确定这是否有效,但您可以尝试click()一次。

答案 1 :(得分:1)

$('.call-us-options').on('change', function() {

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

});