2013-02-28 12 views
5

In der Dokumentation, so scheint es, dass Sie sprudelnde indem ein Argument zu einem Click-Ereignisse auf einem Textfeld verhindern:Wie verhindere ich das Bubbling von Ereignissen in einer Titanium-Legierungsansicht?

http://docs.appcelerator.com/titanium/3.0/#!/api/Titanium.UI.TextField-event-click

Mit ihrem neuen Legierung Rahmen, ich habe ein Textfeld wie so erklärt:

<TextField id='name' onClick='doStuff' /> 

und in meinem Controller habe ich diese Funktion:

function doStuff(e) { 
    alert('hello'); 
} 

Doch diese eleme nt ist in ein Container-Element eingeschlossen, das auch ein onClick-Ereignis hat, und ich möchte verhindern, dass dieses ausgelöst wird, wenn ich auf das Textfeld klicke. Wie kann ich das erreichen?

Antwort

11

Versuchen:

function doStuff(e){ 
    e.cancelBubble = true; 
    alert('hello'); 
} 
0

Angenommen, Sie diesen Code in XML-Datei geschrieben haben:

<View id = “parent” onClick = “parentClicked”> 
     <ImageView id=“sampleImage” onClick= “childImageClicked”> 
     </ImageView> 

</View> 

Dann ist dieses

Versuchen in TSS:

“#sampleImage” : { 

bubbleParent : false, 

} 

oder wenn Sie möchte es in Javascript machen:

function function_name(e){ 

    e.cancelBubble = true; 
} 

http://docs.appcelerator.com/platform/latest/#!/api/Titanium.Event-property-cancelBubble

Ich hoffe, dies wird für Sie arbeiten.