localStorage
değiştirildiği zaman bildirim almam gerekiyor. Bu kod, Firefox'ta (24) iyi çalışır, ancak Chrome 29 (veya 30) veya IE 10'da çalışmaz. Ayrıca, yerel bir dosyada (file:///
) kullanarak test ederken değil, canlı bir sunucuda çalışır.localStorage olay dinleyicisi, Chrome'da yerel dosya için yanmıyor
<!DOCTYPE html>
<html>
<head>
<title>Index</title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#submit').click(function() {
console.log('Clicked');
if($('#username').val() != "")
localStorage.setItem('someItem', 'someValue');
});
$(window).bind('storage', function(e) {
alert('change');
});
});
</script>
</head>
<body>
<input type="text" id="username" name="username" value="" />
<a href="#" id="submit">Click me</a>
<p id="result"></p>
</body>
</html>
Chrome'da bu sorun nedir: İşte
kodudur? Gerekirse iki sekme açıyorum.
W3C'nin özelliklerini okudum, sanırım anlıyorum, benim sorunum iki sekme açıyorum, tab2'de, localStorage değerini değiştirdim, ancak tab1'in hiçbiri olmuyor. Chrome 29 sürümünü denediniz mi? –
@TrungHuynh Lütfen test edebileceğim bir keman sağlayın. – K3N
İşte işte! http://jsfiddle.net/4ftxj/! Ancak, tam olarak çalışması için iki sekmeye ihtiyaç vardır, çünkü belirtimi takip et, localStorage'ı değiştiren sekmeyi dinleyemez. –