2011-12-06 18 views
2

我試圖綁定一個水龍頭事件無濟於事:jQuery Mobile的綁定/現場自來水

$('label[for=p_divisionR]').bind('tap', function(){ 
    $('#propertyTypeDivision').parent().show(); 
    $("#propertyType").parent().hide(); 
    $("#propertyTypeDivisionRL").parent().hide(); 
    hideBedrooms(); 
}); 

我與.live('tap', fn)嘗試,以及不工作。但是,當在桌面上,使用.live('click', fn)工作正常。

爲什麼click事件可以正常工作但不能點擊?它正在使用jQuery mobile rc1在iPad上進行測試。

參見:

http://m.bentons.propertylogic.net/

+0

嗯看起來正確的我,也許該事件傳遞給函數,看看它被稱爲:綁定(「水龍頭」,函數(事件,UI)也有失不幸 –

+0

沒有錯誤,和傳球? :(看到更新的q爲鏈接 – rickyduck

+0

試試.live('vclick',fn) –

回答

1

使用vclick有問題與tap早在公測天,他們的開發人員建議人們使用vclickvclick可以在移動設備和桌面上使用。點擊有時會觸發多個事件。

$('#p_divisionR').live('change', function(){ 
    $('#propertyTypeDivision').parent().show(); 
    $("#propertyType").parent().hide(); 
    $("#propertyTypeDivisionRL").parent().hide(); 
    hideBedrooms(); 
}); 

編輯: http://jsfiddle.net/jostster/UHX5k/1/ 忘了你在使用單選按鈕。對於那些您應該使用change而不是vclick

+0

我知道這不是一個解決方案,但是這個**可能在最終版本中已經修復。猜測這是值得一試的:http://jquerymobile.com/blog/2011/11/16/announcing-jquery-mobile-1-0/ – Smamatti

+0

@Smamatti當我與開發者交談時,他給人的印象是它永遠不會是固定爲水龍頭不應該用來作爲點擊事件,但更多的是一個非常快速的水龍頭事件。他表示,他不確定一種方法來解決它,並沒有真正計劃因爲水龍頭不能以這種方式使用。 – Bot

+0

我已升級到jQuery移動版1.0,並將'click'事件更改爲'vclick'事件,但無濟於事。我點擊「Rental」時有一個提醒,但即使這樣也沒有出現 – rickyduck

2

您可以使用其他事件,如touchstart以及click。他們響應在iOS中的Safari瀏覽器觸摸。這種方法對我有用。

$('#p_divisionR').live('click touchstart', function(){ 
    $('#propertyTypeDivision').parent().show(); 
    $("#propertyType").parent().hide(); 
    $("#propertyTypeDivisionRL").parent().hide(); 
    hideBedrooms(); 
});