HTML5 / JS Storage Event Handler

I use the Safari webkit engine along with HTML5 and JS to create a standalone application. Now I use the sessionStorage array to store the state of my application (simulation).

repository data works fine with the inspector, functions work fine, it's an event handler that doesn't respond

preformd test on Anuragat http://jsfiddle.net/pvRgH/ also doesn't work here

window.addEventListener('storage', storageEventHandler, false);
function storageEventHandler(evt){
    alert("storage event called key: " + evt.key );
    switch(evt.key){
        case 'bat1':
        case 'bat2': batteryDCMeter(); break;
        case 'extPowerOn': rechargeBattery(); break;
    }   
}

function load()
{
    dashcode.setupParts();
    //set HTML 5 key/value's
    sessionStorage.setItem('bat1', 'OFF');
    sessionStorage.setItem('bat2', 'OFF');
    sessionStorage.setItem('bat1DC', '26.2');
    sessionStorage.setItem('bat2DC', '26.2');
}

function bat1OnOff(event)
{
    if(sessionStorage['bat1'] == 'OFF'){
        sessionStorage['bat1'] = 'ON';
    }else{
        sessionStorage['bat1'] = "OFF";
    }
}


function bat2OnOff(event)
{
    if(sessionStorage['bat2'] == 'OFF'){
        sessionStorage['bat2'] = 'ON';
    }else{
        sessionStorage['bat2'] = "OFF";
    }
}
+5
source share
3 answers

Warehouse event handlers are triggered only if the warehouse event is fired from another window.

, localStorage Safari 5+?

+12
0

"" . addEventLister , .

, pageOne , pageTwo "storage" , pageOne .

0

All Articles