Prefix in context:
{
"@context": {
"sch": "http://schema.org/"
},
"@type": "Event",
"sch:name": "sth"
}
Prefix in context:
{
"@context": {
"sch": "http://schema.org/"
},
"@type": "Event",
"sch:name": "sth"
}
(Note that some of the changes are just due to variance.)
The "Tools for web developers" title becomes visibility: hidden when you scroll down. Before axe had scrolled to the bottom of the page, so we didn't count it. But now we do and there's one more non-failing tap target.
tap-targets { score: '0.37 => 0.39', detailsItemCount: '17 => 17' }
| self.addEventListener("install", async e => { | |
| caches.open("v1").then(function (cache) { | |
| return cache.addAll(["/app", "/app.css"]); | |
| }); | |
| }); | |
| self.addEventListener("fetch", event => { | |
| event.respondWith( | |
| caches.match(event.request).then(cachedResponse => { | |
| return cachedResponse || fetch(event.request); |
See below.
See below.
| - |
| function throttle (callback, limit) { | |
| var wait = false; | |
| return function () { | |
| if (!wait) { | |
| callback.apply(null, arguments); | |
| wait = true; | |
| setTimeout(function () { | |
| wait = false; | |
| }, limit); | |
| } |
| function debounce(func, wait, immediate) { | |
| var timeout; | |
| return function() { | |
| var context = this, args = arguments; | |
| var later = function() { | |
| timeout = null; | |
| if (!immediate) func.apply(context, args); | |
| }; | |
| var callNow = immediate && !timeout; | |
| clearTimeout(timeout); |
| var waitFor = async function waitFor(conditionFn, { timeout = 15000, checkInterval = 25, debugString = null, } = {}) { | |
| if (typeof conditionFn !== "function") { | |
| throw Error("waitFor condition argument isn't a function. Did you mean waitForElement?"); | |
| } | |
| if (!debugString) { | |
| debugString = conditionFn.toString(); | |
| } | |
| let startedAt = new Date(); | |
| let conditionResult = await conditionFn(); | |
| while (!conditionResult) { |