Sadece başka değil Şimdi bu olduğunu ne fark soruyu var , ben var bazı testler yapılır (http://jsfiddle.net/ZC3Lf/) değiştirerek prop
ve attr
bir <form action="/test/"></form>
çıkış olmak:
1) prop Modifikasyon testi
Prop:http://fiddle.jshell.net/test/1
Attr:http://fiddle.jshell.net/test/1
2) Attr Modifikasyon testi
Prop:http://fiddle.jshell.net/test/1
Attr:/test/1
3) Attr sonra Prop Modifikasyon testi
Prop:http://fiddle.jshell.net/test/11
Attr:http://fiddle.jshell.net/test/11
4) Prop sonra Attr Modifikasyon testi
Prop:http://fiddle.jshell.net/test/11
Attr:http://fiddle.jshell.net/test/11
Şimdi birkaç şey hakkında kafam karıştı, bildiğim kadarıyla:
Önerme: JavaScript ile yapılan herhangi bir değişiklikten sonra mevcut durumundaki değer
Attr: Sayfa yüklemesinde html'de tanımlandığı şekliyle değer.
Şimdi eğer bu doğruysa,
- Neden değiştirerek mu
prop
yapmak gibiaction
tam ve tersine neden niteliği değil modifiye geliyor? - Neden değiştirerek yok
prop
içinde1)
bir bana hiçbir mantıklı, özniteliği değiştirmek? - Neden değiştirerek gelmez
attr
yılında2)
özelliğini değiştirmek, onlar yol olduğunu bağlantılı olduğu anlamına mı?
Test Kodu
HTML
JavaScript
var element = $('form');
var property = 'action';
/*You should not need to modify below this line */
var body = $('body');
var original = element.attr(property);
body.append('<h1>Prop Modification test</h1>');
element.prop(property, element.prop(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
//reset
element.prop(property, original);
element.attr(property, original);
body.append('<h1>Attr Modification test</h1>');
element.attr(property, element.attr(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
//reset
element.prop(property, original);
element.attr(property, original);
body.append('<h1>Attr then Prop Modification test</h1>');
element.attr(property, element.attr(property) + 1);
element.prop(property, element.prop(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');
//reset
element.prop(property, original);
element.attr(property, original);
body.append('<h1>Prop then Attr Modification test</h1>');
element.prop(property, element.prop(property) + 1);
element.attr(property, element.attr(property) + 1);
body.append('Prop: '+element.prop(property)+'<br />');
body.append('Attr: '+element.attr(property)+'<hr />');