gm_setvalue getvalue GM_addValueChangeListener可以跨页面通信
GM_setValue(name, value)
Set the value of 'name' to the storage.
GM_getValue(name, defaultValue)
Get the value of 'name' from storage.
GM_addValueChangeListener(name, function(name, old_value, new_value, remote) {})
Adds a change listener to the storage and returns the listener ID.
'name' is the name of the observed variable.
The 'remote' argument of the callback function shows whether this value was modified from the instance of another tab (true) or within this script instance (false).
Therefore this functionality can be used by scripts of different browser tabs to communicate with each other.