İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

NaN not a number dese de inanmayin

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Şimdi bu javascript denilen arkadaşa ekletme yaptırıyoruz. Hani çoklu sepet olayı gibi düşünün, tuşa bastıkça o maldan ekliyor. Bir tanesi <input> icinde sayı arttırıyor. Bir tane de en aşağıda toplam sayı diye html alanını arttırıyor.

-- BU input alanı sorunsuz artış okey --
var num = document.getElementById(var1).value;
document.getElementById(var1).value = parseInt(num) + 1;


-- bunda ise HTML alanını NaN diye update ediyor --
var num2 = document.getElementById(var2).innerHTML;
var total = parseInt(num2) + 1;
document.getElementById(var2).innerHTML = total;

Bu adiliği bir tek Firefox yapıyor, IE uslu uslu yapıyor işlemi. Firefox value'ya ok, innerHTML gelince neden böyle bir gereksizlik içerisinde.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Şimdi firefox böyle bir adilik peşinde diye, kocaman uygulamayı çöpe atıp başkasını mı kullanayım bunu mu diyorsun bana >:[
 

ploop

0
İyinet Üyesi
Katılım
11 Ekim 2004
Mesajlar
6,964
Reaction score
0
Konum
karavan
Valla uygulamanın kocamanlığını bilmem ama, verdiğim linkteki olay çok hosuma gitti ondan gösterdim :p Senin uygulamanı çöpe mi atarız, fakirlere mi dağıtırız bilmem artık :p
 

sempaty

1
İyinet Üyesi
Katılım
25 Şubat 2005
Mesajlar
3,824
Reaction score
19
Konum
hawaii. ama sanal tur.
emin değilim ama doctype dan dolayı yapmıyor olabilir

Kod:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

bunu ayarlayıp denermisin
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
66
Konum
Sakarya
Tum getElementById(var2) islemlerini tirnak icine almayi dene. getElementById('var2') seklinde.
 

sempaty

1
İyinet Üyesi
Katılım
25 Şubat 2005
Mesajlar
3,824
Reaction score
19
Konum
hawaii. ama sanal tur.
Tum getElementById(var2) islemlerini tirnak icine almayi dene. getElementById('var2') seklinde.

var2 bir objenin id i olsa sorun değil ama orda yanılmıyorsam fonksiyona bağlı bir değişken. tabi orda var2 yerine direk objenin adı tırnak içinde yazılabilir örneğin;

<div id="deneme"> </div>
için
getElementById('deneme')
gibi
 

Tmmz

0
İyinet Üyesi
Katılım
1 Mayıs 2007
Mesajlar
40
Reaction score
0
Kod:
 <div id="a">25</div>
  <script language="javascript">
  var num2 = document.getElementById("a").innerHTML;
  var total = parseInt(num2) + 1;
  alert(total)
  document.getElementById("a").innerHTML = total  
</script>
ff bende de sorunsuz çalışıyor
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Sorun <div> in içindeki rakamın <b>RAKAM</b> formatında olmasıymış. IE parseInt() yaparken arasından alabiliyor, firefox NaN döndürüyor. bold tagları replace edince çalıştı, bu fonksiyonlarda bir standardizasyon olması gerekmiyor mu, sevmiyorum bu işleri.
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
66
Konum
Sakarya
Sorun <div> in içindeki rakamın <b>RAKAM</b> formatında olmasıymış. IE parseInt() yaparken arasından alabiliyor, firefox NaN döndürüyor. bold tagları replace edince çalıştı, bu fonksiyonlarda bir standardizasyon olması gerekmiyor mu, sevmiyorum bu işleri.

IE standart değil.
Uygulama yazarken firefox ile çalışmak en iyisi, onda çalışınca pekçok tarayıcıda çalışır. Operanın biraz aksiliği var ama o kadar.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst