diff --git a/packages/provider/src/provider.js b/packages/provider/src/provider.js
index 014090eef46bb59fb661e0430796e71f140e3fba..ac514bc0e13c2d7cb966620ee64900bdee393f0c 100644
--- a/packages/provider/src/provider.js
+++ b/packages/provider/src/provider.js
@@ -106,7 +106,14 @@ export class Provider extends HTMLElement {
             // Use traditional 'for loops' for IE 11
             for(const mutation of mutationsList) {
                 if (mutation.type === 'attributes') {
-                    console.log('The ' + mutation.attributeName + ' attribute was modified.');
+                    const name = mutation.attributeName;
+                    console.log('The ' + name + ' attribute was modified.');
+                    that[name] = that.getAttribute(name);
+                    that.callbackStore.forEach(item => {
+                        if (item.name === name) {
+                            item.callback(value);
+                        }
+                    });
                 }
             }
         };