2013-09-07 4 views
0

Я пробовал событие onclick на родительском div, которое имеет 100% всю часть div, которую можно щелкнуть. Но на самом деле я не хочу этого, потому что, если я сделал sub div, как указано кому-то функции. Например:Onclick on Main Div

<div id="loginContainer" onclick="link();"> 
    <div id="login_form"> 
    <form method="post"> 
<input type="text" name="login" value=""/> 
<input type="submit" name="submit" value="submit"/> 
    </form> 
    </div> 
    </div> 

Вот demo

Когда я нажимаю, чтобы войти в поле формы и это заставить его OnClick событие. Есть ли способ сделать родительский div как интерактивный, не затрагивая sub div, используя javascript или jquery или css.

Благодаря

+1

попробовать с event.stopPropagation(); в jquery –

ответ

1

Вы можете stop the propagation для потомков формы.

jsFiddle Demo

function link(e) { 
    window.open("http://google.com"); 
} 

$("#login_bar_builder").on("click", link) 
         .on("click", "form *", 
          function (e) { 
           e.stopPropagation(); 
          }); 
+0

Спасибо, когда я нажимаю на панель, она не идет на google.com? –

+1

Является ли фоновый клик работать для вас в скрипке? Это не для меня. – Harry

+2

@WordPress Исправлено. – Itay