Try to trace the click event and comment a line in preventGhostClick
if( isRecentTap(e) ) {
// a tap has already happened at these coordinates recently, ignore this event
e.stopPropagation();
//e.preventDefault();
return false;
}
it worked.
when click the item, the preventGhostClick receive two events, one for “item-content” another is input, after handle the event from the target “item-content” the selected item is checked, but after handle the event which target to input the selected item unchecked back.
I have the same issue, once a radio button is selected, other items can not be selected. This is browser only, device build is fine (using phonegap).
I traced it back to this commit
Specifically to the addition of the method preventGhostClick.
I was not sure if the intent was to not support web only views so i added my own workaround only for debugging.
My hack around was to expose in ionic the event listener
document.addEventListener(‘click’, preventGhostClick, true); ionic.pg = preventGhostClick;
Then in the shim code (to enable phonegap on web )
document.removeEventListener(‘click’, ionic.pg, true);
in my merges directory i override the shim file so device side works as expected.
Will take a look at the preventGhostClick to see if there is a proper fix.
Found the root cause is DIV not allowed nested in LABEL. so changed the div (item-content) to span and set display as inline-block. (if set display block, JS capture the first click event target still not LABEL, but SPAN instead.)