jeans-kassel.de

Webseiten-Bericht für jeans-kassel.de

 Generiert am 19 Dezember 2025 17:56 PM

Aktuelle Statistiken? UPDATE !

Der Wert ist 41/100

SEO Inhalte

Seitentitel

start - Lange

Länge : 13

Perfekt, denn Ihr Seitentitel enthält zwischen 10 und 70 Anzahl Zeichen.

Seitenbeschreibung

start

Länge : 5

Ideal, aber Ihre Seitenbeschreibung sollte zwischen 70 und 160 Zeichen (Leerzeichen incinbegriffen) enthalten. Benutzen Sie dieses kostenlose Werkzeug um die Länge zu prüfen.

Suchbegriffe

Nicht so gut. Wir konnten keine META-Suchbegriffe auf Ihrer Webseite finden. Benutzen Sie dieses kostenlose Werkzeug um META-Suchbegriffe zu erzeugen.

Og META Eigenschaften

Ihre Webseite nutzt nicht die Vorteile der Og Properties. Diese Angaben erlauben sozialen Suchmaschinenrobotern Ihre Webseite besser strukturiert zu speichern. Benutzen Sie dieses kostenlose Werkzeug um Og Properties zu erzeugen.

Überschriften

H1 H2 H3 H4 H5 H6
0 32 1 2 0 1
  • [H2] Zerspanung
  • [H2] Spannen
  • [H2] Messen
  • [H2] Handwerkzeuge
  • [H2] Trennen / Bohren / Schleifen / Sägen
  • [H2] Elektro-/ Druckluft-Werkzeuge / Motoristik
  • [H2] Arbeitsschutz
  • [H2] Löten, Schweißen
  • [H2] Werkstattbedarf
  • [H2] Betriebseinrichtung
  • [H2] Verbindungstechnik
  • [H2] Bürobedarf
  • [H2] Markenshops
  • [H2] Unsere Besten
  • [H2] WGB Ratschen-Ringmaulschlüsselsatz 6tlg SW8-19mm im S-Blechkasten Artikelnummer: 41005
  • [H2] Bessey Getriebezwinge GearKlamp 150mm Ausladung 60mm, 2K-Griff Artikelnummer: 27416150
  • [H2] Bessey Getriebezwinge GearKlamp 300mm Ausladung 60mm, 2K-Griff Artikelnummer: 27416300
  • [H2] Bessey Getriebezwinge GearKlamp 450mm Ausladung 60mm, 2K-Griff Artikelnummer: 27416450
  • [H2] Stanley Werkzeugbox Essential Kunstst. 406x205x195mm KS-Verschluss Artikelnummer: 49813
  • [H2] Felo Smart-Griff-Steckschlüsselsatz 29-tlg. 1/4" Griff+Ratsche+Steckschlüssel+Bits Artikelnummer: 43772
  • [H2] Felo Smart-Griff-Steckschlüsselsatz 20-tlg. Kombigriff+Steckschlüssel 1/4" lang+Bits Artikelnummer: 43771
  • [H2] Stanley Blechschere FATMAX ERGO gerade 250mm gelb/schwarz Artikelnummer: 4482110
  • [H2] Baueimer 20l schwarz Boden verstärkt, Metallbügel Artikelnummer: 48754
  • [H2] Söhngen KFZ-Verbandkasten Kst. schwarz Füllung nach DIN 13164 Artikelnummer: 76000100
  • [H2] 3M Austauschkissen für X4 Peltor SNR=35dB Artikelnummer: 70021197
  • [H2] 3M Kapselgehörschützer X4A Peltor SNR=35dB m. Bügel Artikelnummer: 70021195
  • [H2] Ratschen-Zurrgurt 2-teilig 4m 25mm Bandbreite Spitzhaken Artikelnummer: 941047501
  • [H2] Ratschen-Zurrgurt 2-teilig 6m 35mm Bandbreite Spitzhaken Artikelnummer: 941047602
  • [H2] Anti-Rutschrolle 250x8mm L5m schwarz Artikelnummer: 941050201
  • [H2] HSS-Kegelsenker-Bitsatz 90° 6,3-20,5mm plus6 Artikelnummer: 14110
  • [H2] Beliebte Artikelgruppen
  • [H2] \n \n {{shortText}}\n \n\n \n {{itemNumberLabel}}: {{itemNumber}}\n \n \n \n \n \n \n {{#recommendedPrice}}\n {{recommendedPrice}}\n {{\/recommendedPrice}}\n\n \n {{effectivePrice}}\n\n {{#effectivePriceSuffix}}\n {{effectivePriceSuffix}}\n {{\/effectivePriceSuffix}}\n \n\n {{#secondaryPrice}}\n \n {{secondaryPrice}}\n {{secondaryPriceSuffix}}\n \n {{\/secondaryPrice}}\n\n \n {{priceQuantityLabel}} {{priceQuantity}}\n \n \n \n \n \n\n\n'; var VARIANT_FEATURES_TEMPLATE = '{{title}}\n\n{{#hasFeatures}}\n\n {{#features}}\n \n \n {{feature}}\n \n \n {{value}} {{unit}}\n \n \n {{\/features}}\n\n{{\/hasFeatures}}\n\n{{^hasFeatures}}\n {{noCommonFeatures}}\n{{\/hasFeatures}}'; function loadItemText() { var overwriteLongtext = true; var $longtext = $("#output-longtext"); if (overwriteLongtext || $longtext.length === 0 || isEmpty($longtext.html().trim())) { loadOxomiItemText(); } } function load3dViewer() { var shouldDisplay3dViewer = false; if (shouldDisplay3dViewer) { loadOxomiItem3dModel(); } } /** * Increments the item quantity by a certain amount * * Uses toFixed to round the result to the right number of decimals to prevent errors due to floating point * arithmetic. * * @param id the ID of the input field to increment * @param orderStep the amount to increment */ function incrementItemQuantity(id, orderStep) { var $input = $('#' + id); var result = parseFloat((parseFloat($input.val()) + orderStep).toFixed(3)); $input.val(result); } /** * Decrements the item quantity by a certain amount * * Uses toFixed to round the result to the right number of decimals to prevent errors due to floating point * arithmetic. * * @param id the ID of the input field to decrement * @param orderStep the amount to decrement * @param minOrderQuantity the minimum order quantity */ function decrementItemQuantity(id, orderStep, minOrderQuantity) { var $input = $('#' + id); var result = parseFloat((parseFloat($input.val()) - orderStep).toFixed(3)); if (result < minOrderQuantity) { $input.val(minOrderQuantity); } else { $input.val(result); } } var IMAGE_OVERLAY_TEMPLATE = '' + ' ' + ' ' + ' {{#images}}' + ' ' + ' ' + ' ' + ' ' + ' ' + ' {{/images}}' + ' ' + ' ' + ' ' + ' ' + ' ' + ''; function createImageOverlay($container) { // Event handler that opens the item image overlay and displays the clicked image var showArrows = true; var fadeIn = false; $container.on('click', 'a', function (e) { e.preventDefault(); var currentUrl = $(this).attr('href'); var currentIndex = 0; var images = []; // Find all item images and the index of the one that was clicked $container.find('.item-image-js').filter(function (index, element) { return !$(element).parent().hasClass('slick-cloned'); }).each(function (index, element) { var url = $(element).attr('href'); images.push(url); if (url === currentUrl) { currentIndex = index; } }); if (images.length === 0) { return; } // Generate and add the overlay to the DOM var $overlay = $(Mustache.render(IMAGE_OVERLAY_TEMPLATE, {'images': images})); var $slider = $overlay.find('.image-overlay-images-js'); $('body').addClass('image-overlay-open').append($overlay); if (fadeIn) { $overlay.hide().fadeIn(); } // Generate the slider $slider.slick({ slidesToShow: 1, dots: true, arrows: showArrows, initialSlide: currentIndex }); // Event handler for pressing escape, left/right arrow keys var keydownHandler = function (e) { if (e.keyCode === 27) { closeOverlay(); } else if (e.keyCode === 37) { $slider.slick('slickPrev'); } else if (e.keyCode === 39) { $slider.slick('slickNext'); } }; // Function that closes the overlay and removes the escape key event handler var closeOverlay = function (e) { $('body').removeClass('image-overlay-open'); $overlay.remove(); $(document).off('keydown', keydownHandler); }; // Click on the close button closes the overlay $overlay.find('.image-overlay-close').click(function (e) { e.preventDefault(); closeOverlay(); }); // Click on the background closes the overlay $overlay.click(function (e) { if (e.target !== this) { return; } closeOverlay(); }); // Event handler for keyboard inputs $(document).on('keydown', keydownHandler); }); } var AUTOCOMPLETE_SUGGESTION_TEMPLATE = '' + ' {{label}}' + ' {{#showAddressLabelBox}}' + ' ' + ' {{addressLabel}}' + ' ' + ' {{/showAddressLabelBox}}' + ' {{#hasDescription}}' + ' ' + ' {{#descriptionLines}}' + ' {{.}}' + ' {{/descriptionLines}}' + ' ' + ' {{/hasDescription}}' + ''; function enableAutocomplete(field) { function createSubmitData(key, value) { var data = {}; var fieldData = field.data(); for(f in fieldData) { if (fieldData.hasOwnProperty(f)) { if (f != 'autocomplete' && f != 'optional' && f != 'select2') { data[f] = fieldData[f]; } } } data[key] = value; return data; } if (field.data('optional') && field.is(":empty")) { field.prepend(''); } field.on('select2:open', function (e) { $('.select2-search__field').each(function(e) { var search = $(this); if (search.parent().hasClass('select2-search--inline')) { // Don't add placeholder and graphic to inline search fields return; } var placeholder = field.attr('data-searchtext'); if (typeof placeholder === 'undefined' || placeholder === '') { placeholder = 'Geben Sie einen Suchtext ein…'; } search.attr('placeholder', placeholder); }); }); field.on('select2:unselect', function(e) { $(this).html(''); e.preventDefault(); e.stopPropagation(); }); field.select2({ allowClear: field.data('optional'), placeholder: field.data('placeholder') || 'Ihre Auswahl…', dropdownParent: field.parent(), minimumInputLength: 0, tags: field.data('dynamic-option'), templateResult: function (result) { if (!result) { return undefined; } var hasDescription = result.completionDescription && result.completionDescription !== ''; if (field.attr('data-multiline')) { var jsonAddress = getAddressAsJson(result.value); return $(Mustache.render(AUTOCOMPLETE_SUGGESTION_TEMPLATE, { 'label': result.fieldLabel, 'hasDescription' : hasDescription, 'descriptionLines': hasDescription ? result.completionDescription.split('\n') : null, 'showAddressLabelBox': jsonAddress.isErpAddress && jsonAddress.addressLabel, 'addressLabel': jsonAddress.addressLabel, 'addressLabelStyle': jsonAddress.addressLabelStyle })); } return hasDescription ? result.completionDescription : result.completionLabel; }, language : { loadingMore: function() { return 'Lade Daten…'; }, searching: function () { return 'Suche…'; }, noResults: function () { return 'Keine Suchtreffer…'; } }, ajax: { url: '/' + field.data('autocomplete'), dataType: 'jsonp', quietMillis: 100, data: function(term, page) { return createSubmitData('query', term.term); }, processResults: function (data, page) { return { results: data.completions, more: false }; } } }); } function getAddressAsJson(addressAsJson){ try { return JSON.parse(addressAsJson); } catch(e) { return {}; } } $(document).ready(function() { $('select[data-autocomplete]').each(function(e) { var field = $(this); enableAutocomplete(field); }); $('.select2-select').each(function(e) { var field = $(this); if (field.data('optional')) { field.prepend(''); } field.select2({ allowClear: field.data('optional'), placeholder: field.data('placeholder') || 'Ihre Auswahl…', dropdownParent: field.parent(), minimumResultsForSearch: 10, width : '100%', language : { maximumSelected: function(args) { return 'Sie können maximal ' + args.maximum + ' Elemente auswählen'; }, searching: function () { return 'Suche…'; }, noResults: function () { return 'Keine Suchtreffer…'; } }, escapeMarkup: function(m) { // Do not escape HTML in the select options text return m; } }); }); }); /** * Retrieves Information about known items from shop for Infoplay. */ function infoplayItemLookup(infoplayData, next) { fillSelection(infoplayData); if (infoplayData.isSelectedAlternative) { $.getJSON( '/items/api/infos', { uniqueItemNumber: infoplayData.uniqueItemNumber, checkCanAddToBasket: false }, function (json) { infoplayData.items.push(renderInfoplayItem(json.item, infoplayData)); next(infoplayData); } ).fail(function (call) { oxomi.showMessageInDialog("Fehler", call.responseJSON.message); }); } else { $.getJSON( '/items/api/infoplay', { query: infoplayData.itemNumber, supplierNumber: infoplayData.supplierNumber, supplierNumbers: infoplayData.supplierNumbers !== undefined ? infoplayData.supplierNumbers.join() : '', gtin: infoplayData.gtin }, function (json) { for (i = 0; i < json.items.length; i++) { infoplayData.items.push(renderInfoplayItem(json.items[i], infoplayData)); } next(infoplayData); } ).fail(function (call) { oxomi.showMessageInDialog("Fehler", call.responseJSON.message); }); } } /** * Retrives Information about known items from shop for Navigator Pro. */ function infoplayProductLookup(infoplayData, next) { fillSelection(infoplayData); $.getJSON( '/items/api/infoplay', { query: infoplayData.product.oxomi.itemNumber, supplierNumber: infoplayData.product.oxomi.supplierNumber, supplierNumbers: infoplayData.product.oxomi.supplierNumbers, gtin: infoplayData.product.oxomi.gtin, navProMode: true, context: infoplayData.context }, function (json) { if (json.items.length > 0) { var item = json.items[0]; infoplayData.product.label = 'Preis & Verfügbarkeit'; infoplayData.product.availability = { label: 'Verfügbarkeit', } if (item.stockType == 'IN_STOCK') { infoplayData.product.availability.statusColor = 'green'; } else if (item.stockType == 'LOW_STOCK' || item.stockType == 'REORDERED') { infoplayData.product.availability.statusColor = 'yellow'; } else if (item.stockType == 'UNKNOWN') { infoplayData.product.availability.statusColor = 'grey'; } else if (item.stockType == 'OUT_OF_STOCK' || item.stockType == 'MADE_TO_ORDER' || item.stockType == 'NO_LONGER_AVAILABLE' || item.stockType == 'ORDER_ITEM') { infoplayData.product.availability.statusColor = 'red'; } if (infoplayData.context == 'datasheet' || infoplayData.context == 'product-overview') { infoplayData.product.availability.text = item.stockText } if (item.priceQuantity !== undefined) { infoplayData.product.quantity = { prefix: 'je', amount: item.priceQuantity } } if (item.isOrderable) { infoplayData.product.order = { label: 'Bestellen', quantity: item.minOrderQuantity_value, quantityUnitPrefix: 'Menge', quantityUnit: item.quantityUnit, unitUnRec20: item.unitUnRec20, supplierName: item.supplierName, supplierItemNumber: item.supplierItemNumber, recommendedOrderQuantity: item.recommendedOrderQuantity, minOrderQuantity: item.minOrderQuantityAmount, orderStep: item.orderStep_value, } } if (item.hasEffectivePrice) { infoplayData.product.price = { label: 'Preis', amount: item.effectivePrice } } if (item.showSecondaryPrice) { infoplayData.product.alternativePrice = { prefix: item.secondaryPriceSuffix, amount: item.secondaryPrice } } infoplayData.product.sellsite = { uniqueItemNumber: item.uniqueItemNumber } if (item.shortText) { infoplayData.product.shortText = item.shortText } if (item.itemNumber) { infoplayData.product.itemNumber = item.itemNumber } next(infoplayData); } } ).fail(function (call) { oxomi.showMessageInDialog("Fehler", call.responseJSON.message); }); } function infoplayBuzz(message) { $.getJSON( '/items/api/infoplay', { query: message.payload().itemNumber, supplierNumber: message.payload().supplierNumber, supplierNumbers: message.payload().supplierNumbers, gtin: message.payload().gtin, navProMode: true, }, function (json) { if (json.items.length > 0) { const item = json.items[0]; const result = { itemNumber: item.itemNumber, gtin: item.gtin, model: item.model, shortText: item.shortText, previewImageUrl: item.previewImageUrl, brand: { name: item.brandName, imageUrl: item.brandImageUrl }, // Enhance result to enable unique resolution at add to basket uniqueItemNumber: item.uniqueItemNumber, }; if (item.hasEffectivePrice) { result.price = { prefix: item.effectivePriceSuffix, amount: item.effectivePrice } } if (item.priceQuantity !== undefined) { result.priceQuantity = "je " + item.priceQuantity; } if (item.showSecondaryPrice) { result.alternativePrice = { prefix: item.secondaryPriceSuffix, amount: item.secondaryPrice } } var mappedStockType; if (item.stockType == 'IN_STOCK') { mappedStockType = "full"; } else if (item.stockType == 'LOW_STOCK' || item.stockType == 'REORDERED') { mappedStockType = "low"; } else if (item.stockType == 'UNKNOWN') { mappedStockType = "unknown"; } else { mappedStockType = "out_of_stock"; } result.availability = { state: mappedStockType, fromSupplier: item.stockExternal, text: item.stockText, } if (item.isOrderable) { result.order = { quantity: item.minOrderQuantity_value, unit: item.quantityUnit } result.unitUnRec20 = item.unitUnRec20 result.supplierName = item.supplierName; result.supplierItemNumber = item.supplierItemNumber; result.recommendedOrderQuantity = item.recommendedOrderQuantity; result.minOrderQuantity = item.minOrderQuantityAmount; result.orderStep = item.orderStep_value; } message.reply(result); } } ).fail(function (call) { oxomi.showMessageInDialog("Fehler", call.responseJSON.message); }); } function addToBasketBuzz(message) { const product = message.payload().product; const machineQuantity = product.order.quantity.replace(/\./g, '').replace(',', '.'); if (externalLink && externalLink.canAddItemsToBasket) { const item = { itemNumber: product.itemNumber, shortText: product.shortText, supplierName: product.supplierName, supplierNumber: product.supplierNumber, supplierItemNumber: product.supplierItemNumber, unitName: product.order.unit, unitUnRec20: product.unitUnRec20, recommendedOrderQuantity: product.recommendedOrderQuantity, minOrderQuantity: product.minOrderQuantity, orderStep: product.orderStep, }; externalLink.addItemToBasket(item, machineQuantity); } else { const asInfoplayData = { product: { sellsite: { uniqueItemNumber: product.uniqueItemNumber }, oxomi: { supplierNumber: product.supplierNumber, itemNumber: product.itemNumber, gtin: product.gtin }, order: { quantity: machineQuantity } } }; infoplayProductBasket(asInfoplayData); } } /** * Generates an item object for Infoplay. */ function renderInfoplayItem(item, infoplayData) { var newItem = { itemNumber: item.itemNumber, uniqueItemNumber: item.uniqueItemNumber, itemUrl: '/item/' + item.uniqueItemNumber, supplierName: item.brandName, shortText: item.shortText, previewImageUrl: item.previewImageUrl, quantity: item.minOrderQuantityUser, reresolve: true, supplierNumber: item.supplierNumber, supplierItemNumber: item.supplierItemNumber, unitName: item.quantityUnitName, unitUnRec20: item.unitUnRec20, recommendedOrderQuantity: item.recommendedOrderQuantity, minOrderQuantity: item.minOrderQuantity, minOrderQuantityAmount: item.minOrderQuantityAmount, orderStep: item.orderStep, orderStepFloat: parseFloat(item.orderStep_value), features: [] }; var priceString = item.effectivePrice; if (item.hasEffectivePrice) { priceString = priceString + " " + item.effectivePriceSuffix; } var availability = item.stockText; if (item.additionalStockText) { availability = availability + "" + item.additionalStockText; } newItem.features.push({ fields: [ {name: item.effectivePriceName, value: priceString}, {name: 'Preismenge', value: item.priceQuantity}, {name: 'Min. Bestellmenge', value: item.minOrderQuantity}, {name: 'Bestellschritt', value: item.orderStep}, {name: 'Verfügbarkeit', value: availability, span: true} ] }); newItem.features.push(linkForDivItem(infoplayData)); return newItem; } /** * Basket handler for known items in shop via Infoplay. */ function infoplayBasket(infoplayData, next) { var machineQuantity = infoplayData.quantity.replace(/\./g, '').replace(',', '.'); if (externalLink && externalLink.canAddItemsToBasket) { const item = { itemNumber: infoplayData.item.itemNumber, shortText: infoplayData.item.shortText, supplierName: infoplayData.item.supplierName, supplierNumber: infoplayData.item.supplierNumber, supplierItemNumber: infoplayData.item.supplierItemNumber, unitName: infoplayData.item.quantityUnitName, unitUnRec20: infoplayData.item.unitUnRec20, recommendedOrderQuantity: infoplayData.item.recommendedOrderQuantity, minOrderQuantity: infoplayData.item.minOrderQuantityAmount, orderStep: infoplayData.item.orderStepFloat, }; externalLink.addItemToBasket(item, machineQuantity); next(infoplayData); } else { addItemToBasket(infoplayData.item.uniqueItemNumber, machineQuantity, false, false, "oxomi-infoplay") .then(function (response) { return infoplaySuccessMessage(response, infoplayData, next); }) .then(refreshBasketInfo) .catch(function (response) { return infoplayErrorMessage(response, infoplayData, next); }); } } /** * Basket handler for known products in shop via Navigator Pro. */ function infoplayProductBasket(infoplayData) { if (externalLink && externalLink.canAddItemsToBasket) { const item = { itemNumber: infoplayData.itemNumber, shortText: infoplayData.shortText, supplierName: infoplayData.product.order.supplierName, supplierNumber: infoplayData.product.oxomi.supplierNumber, supplierItemNumber: infoplayData.product.order.supplierItemNumber, unitName: infoplayData.product.order.quantityUnit, unitUnRec20: infoplayData.product.order.unitUnRec20, recommendedOrderQuantity: infoplayData.product.order.recommendedOrderQuantity, minOrderQuantity: infoplayData.product.order.minOrderQuantity, orderStep: infoplayData.product.order.orderStep, }; externalLink.addItemToBasket(item, infoplayData.product.order.quantity); } else { if (sirius.isFilled(infoplayData.product.sellsite.uniqueItemNumber)) { addItemToBasket(infoplayData.product.sellsite.uniqueItemNumber, infoplayData.product.order.quantity, false, false, "oxomi-infoplay-navpro") .then(function (response) { addSuccessMessage('Ihr Warenkorb wurde aktualisiert: ' + response.basketInfo); return response; }) .then(refreshBasketInfo) .catch(function (response) { addErrorMessage(response.message); }); } else { var supplierItem = { supplier: infoplayData.product.oxomi.supplierNumber, supplierItemNumber: infoplayData.product.oxomi.itemNumber, quantity: infoplayData.product.order.quantity, externalUrl: generateOxomiUrl(infoplayData), comment: generateCatalogComment(infoplayData), } addExternallySuppliedItemToBasket(supplierItem, "oxomi") .then(function (response) { addSuccessMessage('Ihr Warenkorb wurde aktualisiert: ' + response.basketInfo); return response; }) .then(refreshBasketInfo) .catch(function (response) { addErrorMessage(response.message); }); } } } /** * Safely fills in custom attribute selection in infoplayData * which is needed for div items. */ function fillSelection(infoplayData) { if (!infoplayData.selection) { infoplayData.selection = infoplayData.itemNumber; } } /** * Function to show success message for Infoplay add to basket */ function infoplaySuccessMessage(response, infoplayData, next) { infoplayData.basketMessage = 'Ihr Warenkorb wurde aktualisiert: ' + response.basketInfo; next(infoplayData); return response; } /** * Function to show error message for Infoplay add to basket */ function infoplayErrorMessage(response, infoplayData, next) { infoplayData.basketMessage = response.message; next(infoplayData); return response; } /** * Injects link into Infoplay dialog to request div item. */ function enhanceExternalInfoplay(infoplayData, infoplayExternalLookup, processInfoplayItemResult) { var addDivItemCallback = function (infoplayDataFilled) { fillSelection(infoplayDataFilled); for (i = 0; i < infoplayDataFilled.items.length; i++) { infoplayDataFilled.items[i].features = [linkForDivItem(infoplayDataFilled)]; } processInfoplayItemResult(infoplayDataFilled); }; infoplayExternalLookup(infoplayData, addDivItemCallback); } /** * Handler for adding div items to basket via Infoplay. */ function infoplayExternalBasket(infoplayData, next) { var supplierItem = { supplier: infoplayData.item.supplierName, supplierNumber: infoplayData.supplierNumbers !== undefined ? infoplayData.supplierNumbers.join() : infoplayData.supplierNumber, supplierItemNumber: infoplayData.item.itemNumber, shorttext: infoplayData.item.shortText, quantity: infoplayData.quantity, externalUrl: generateOxomiUrl(infoplayData), comment: generateCatalogComment(infoplayData), priceQuantity: infoplayData.item.priceQuantity, unitCode: infoplayData.item.quantityUnit } addExternallySuppliedItemToBasket(supplierItem, "oxomi") .then(function (response) { return infoplaySuccessMessage(response, infoplayData, next); }) .then(refreshBasketInfo) .catch(function (response) { return infoplayErrorMessage(response, infoplayData, next); }); } /** * Template for custom Infoplay dialog to add div item. */ var OXOMI_INFOPLAY_TEMPLATE = '' + ' ' + ' ' + ' Artikelnummer' + ' ' + ' ' + ' ' + ' Hersteller' + ' ' + ' ' + ' ' + ' ' + ' ' + '  ' + ' ' + ' ' + ' ' + ''; /** * Renders custom dialog for div items. */ function renderCustomDialog(infoplayData) { var dialog = $(OXOMI_INFOPLAY_TEMPLATE); var submitFunction = function () { infoplayData.quantity = $("#oxomi-quantity").val(); infoplayData.item = { itemNumber: $("#oxomi-itemNumber").val(), supplierName: $("#oxomi-supplier").val() }; infoplayExternalBasket(infoplayData, function (infoplayData) { oxomi.showMessageInDialog($('#oxomi-dialog-title').text(), infoplayData.basketMessage); }); }; $('#oxomi-add-to-basket', dialog).click(submitFunction); $('#oxomi-quantity', dialog).keypress(function (e) { if (e.which == 13) { submitFunction(); } }); $("#oxomi-supplier", dialog).val(infoplayData.brandName); $("#oxomi-itemNumber", dialog).val(infoplayData.selection); oxomi.fillDialog('Divers-Artikel erfassen', dialog); } /** * Adds link to request a div item with logic to add the item to basket. */ function linkForDivItem(infoplayData) { return { title: 'Divers-Artikel', fields: [{ value: $('Nicht der passende Artikel? Hier Divers-Artikel anfragen').click(function () { renderCustomDialog(infoplayData); }), span: true }] }; } /** * Template for catalog URL in div item infos. */ var OXOMI_CATALOG_URL_TEMPLATE = 'https://oxomi.com/p/2024873/catalog/{{catalogId}}?page={{pageNum}}&query={{query}}'; /** * Template for data sheet URL in div item infos. */ var OXOMI_DATA_SHEET_URL_TEMPLATE = 'https://oxomi.com/p/2024873/datasheet/{{supplierNumber}}/{{itemNumber}}'; /** * Generates the URL for the catalog page / data sheet the item was requested on. */ function generateOxomiUrl(infoplayData) { if (infoplayData.catalogId && infoplayData.pageNum) { return Mustache.render(OXOMI_CATALOG_URL_TEMPLATE, { catalogId: infoplayData.catalogId, pageNum: infoplayData.pageNum, query: encodeURIComponent(infoplayData.selection) }); } if (infoplayData.itemNumber) { return Mustache.render(OXOMI_DATA_SHEET_URL_TEMPLATE, { supplierNumber: infoplayData.supplierNumber || '-', itemNumber: infoplayData.itemNumber, }); } return ''; } /** * Generates comment for catalog information. */ function generateCatalogComment(infoplayData) { var commentString = ""; if (typeof infoplayData.catalogName != 'undefined') { commentString = Mustache.render('Aus {{catalogName}} (Seite {{visiblePageNum}}) von {{brandName}}', { catalogName: infoplayData.catalogName, visiblePageNum: infoplayData.visiblePageNum, brandName: infoplayData.brandName }); } return commentString; } /** * Renders div item if no item was found in shop and OXOMI. */ function infoplayEmptyResult(infoplayData, next) { fillSelection(infoplayData); renderCustomDialog(infoplayData); oxomi.showDialog(); } /** * Handler for opening a product detail page from an oxomi story */ function openProduct(context) { jsonRequest('/items/api/infoplay', { query: context.target, supplierNumber: context.supplierNumber, supplierNumbers: context.supplierNumbers, gtin: context.gtin, }, true) .then(function (json) { if (json.items && (json.items.length === 1 || (json.items.length > 1 && json.items.every(function (item) { return item.itemNumber === json.items[0].itemNumber } )))) { // Open exact match in shop, or all items have same itemNumber window.location.href = json.items[0].relativeUrl; } else if (json.items && json.items.length > 1) { // Search for possible match in shop openSearch(context.target, context); } else { // No chance to find in shop, show OX datasheet oxomi.openProductDatasheet({ productId: context.productId, supplierItemNumber: context.target, supplierNumber: context.supplierNumber }); } }) .catch(function (err) { openSearch(context.target, context); }); } function openSearch(query, searchContext) { var queryString = (query) ? query : ''; var searchUrl = "/search" + "?query=" + encodeURIComponent(queryString); if (searchContext.supplierNumbers) { searchContext.supplierNumbers.split(",").forEach(function (supplierNumber) { searchUrl += "&supplierNumber=" + encodeURIComponent(supplierNumber); }); } if (searchContext.classification && false) { searchUrl += "&class=metaclass|" + encodeURIComponent(searchContext.classification); } if (searchContext.series) { searchUrl += "&property[SERIES]=" + encodeURIComponent(searchContext.series); } if (searchContext.brandName) { jsonRequest('/brands/resolveByName', {brandName: searchContext.brandName}, true) .then(function (json) { if (json.brandId) { searchUrl += "&brand=" + encodeURIComponent(json.brandId); } window.location.href = searchUrl; } ).catch(function (response) { window.location.href = searchUrl; }); } else { window.location.href = searchUrl; } } setTimeout(function () { var script = document.createElement("script"); script.type = "text/javascript"; script.src = "https://oxomi.com/assets/frontend/oxomi.js" document.getElementsByTagName("head")[0].appendChild(script); }, 0); function registerInfoplayAtBuzz() { const shop = new buzz.Connector({ name: "SellSite", link: "oxomi" }); shop.addCapability("enhanceProductData", function (message) { infoplayBuzz(message); }); shop.addCapability("addProductToBasket", function (message) { addToBasketBuzz(message); }); } function initializeOxomi() { let script = document.createElement('script'); script.src = '/assets/common/common.js'; script.async = true; document.head.appendChild(script); registerInfoplayAtBuzz(); var settings = { server: 'https://oxomi.com', portal: '2024873', infoplayItemLookup: infoplayItemLookup, infoplayProductLookup: infoplayProductLookup, infoplayMenuTitle: 'Weitere Informationen...' }; settings.accessToken = 'ea246ed213bad41683dd48aac050f47e'; settings.roles = ''; settings.user = 'sellsite'; settings.infoplayBasketHandler = infoplayBasket; settings.infoplayProductBasketHandler = infoplayProductBasket; settings.infoplayExternalBasketHandler = infoplayExternalBasket; settings.infoplayEmptyResultHandler = infoplayEmptyResult; settings.infoplayExternalLookupClosure = enhanceExternalInfoplay; // Set the interface language settings.lang = 'de'; settings.buzzLink = "oxomi"; if (false) { settings.filterLang = 'de'; } oxomi.init(settings); } if (typeof buzz !== 'undefined') { triggerOxomiInit(); } else { document.addEventListener("buzz-ready", triggerOxomiInit); } function triggerOxomiInit() { if (typeof oxomi !== 'undefined') { initializeOxomi(); } else { document.addEventListener("oxomi-loaded", initializeOxomi); } } function handleStoriesLinks(link, context) { if (context.action === 'productsearch') { let query = (context.query) ? context.query : context.target; openSearch(query, context); return true; } if (context.action === 'product') { openProduct(context); return true; } return false; } document.addEventListener('stories-ready', function () { window.scireum.stories.addLinkHandler(handleStoriesLinks, 600); }); /** * Opens the OXOMI portal and records a page impression event for it. */ function openOxomiPortalWithEventRecording() { oxomi.openPortal(); recordPageImpressionEvent('OXOMI_OPEN_PORTAL'); } let oxomi_settings = { server: 'https://oxomi.com', portal: '2024873', accessToken: 'ea246ed213bad41683dd48aac050f47e', roles: '', user: 'sellsite', hasBasket: true, disableStoryLinks: false, infoplayMenuTitle: 'Weitere Informationen...' }; if (false) { oxomi_settings.filterLanguage = 'de'; } // Set the interface language oxomi_settings.language = 'de'; const decodeEntities = (function() { // this prevents any overhead from creating the object each time var element = document.createElement('div'); function decodeHTMLEntities (str) { if(str && typeof str === 'string') { // strip script/html tags str = str.replace(/]*>([\S\s]*?)/gmi, ''); str = str.replace(/ new row of tokens lastTokenTop = this.getBoundingClientRect().top; tokensWidth = 0; } // + 1 because outerWidth gets the width rounded and else it might not fit because of 1px tokensWidth += $(this).outerWidth(true) + 1; }); var additionalElementsWidth = 0; $container.find(".input-width-js:not(.hide)").each(function () { // + 1 because outerWidth gets the width rounded and else it might not fit because of 1px additionalElementsWidth += $(this).outerWidth(true) + 1; }); var inputWidth = $container.width() - tokensWidth - additionalElementsWidth; var minWidth = parseInt(input.tokenElement.css('min-width')); if (minWidth > inputWidth) { inputWidth = $container.width() - additionalElementsWidth; } input.tokenElement.css('max-width', inputWidth); input.tokenElement.width(inputWidth); }, resize: function (e) { input.resizeInputField(); events.onResize.forEach(function (handler) { handler(e); }); }, /** * Shows a small token removal icon in the input field. */ showTokenRemoval: function () { if (input.tokenRemovalElement) { input.tokenRemovalElement.removeClass("hide"); } }, /** * Hides the token removal icon. */ hideTokenRemoval: function () { if (input.tokenRemovalElement) { input.tokenRemovalElement.addClass("hide"); } }, hasTokens: function () { return input.getTokens().length > 0; }, hasToken: function (token) { var contains = false; $.each(input.getTokens(), function (i, element) { if (element.value === token.value) { contains = true; } }); return contains; }, getTokens: function () { return input.element.tokenfield('getTokens'); }, removeToken: function (tokenToRemove) { var newTokens = input.getTokens().filter(function (token) { return tokenToRemove.value !== token.value; }); input.element.tokenfield("setTokens", newTokens); var event = {attrs: tokenToRemove}; events.onRemovedToken.forEach(function (handler) { handler(event); }); }, /** * Cleares the token field of all entries. */ clearTokens: function () { input.element.tokenfield("setTokens", []); input.resizeInputField(); events.onClearTokens.forEach(function (handler) { handler(); }); }, /** * Hides the token removal icon if there are no tokens left, else the icon is shown. */ updateTokenRemovalVisibility: function () { if (input.hasTokens()) { input.showTokenRemoval(); } else { input.hideTokenRemoval(); } }, }; var events = { /** * Handlers are called when user hits the enter key in the input field. */ onEnter: [], /** * Handlers are called when a token is removed from the tokenfield. * * Called with the event object as parameter. */ onRemovedToken: [], onResize: [], /** * Handlers are called when all tokens are cleared from the tokenfield. * * Called with the event object as parameter. */ onClearTokens: [], /** * Handlers will be called before the creation of a token. * * Called with the token as parameter. The token can be changed inside the handler and this will be carried * over into the tokefield. * * Returning false will prevent the token from being created. */ onBeforeCreateToken: [], /** * Will be called after tokenfield created a new token. */ onCreatedToken: [] }; return { eventNames: function () { return Object.keys(events); }, /** * Adds event handlers. * * @param name of the event * @param callback the function to be executed if the event is triggered */ on: function (name, callback) { if (this.eventNames().includes(name)) { events[name].push(asFunction(callback)); } else { throw "Callback " + name + " is no valid event."; } }, /** * Unbinds one or all event handlers. * * @param name of the event * @param callback the function to unbind, if left empty all handlers are removed */ off: function (name, callback) { if (!this.eventNames().includes(name)) { throw "Callback " + name + " is no valid event."; } if (callback === undefined) { events[name] = []; return; } var remainingHandlers = events[name].filter(function (value) { return value !== asFunction(callback); }); events[name] = remainingHandlers; }, start: function (config) { input.init(config); }, getInput: function () { return input.getValue(); }, appendTokens: function (tokens) { input.appendTokens(tokens); }, addToken: function (token) { input.addToken(token); }, getInputFieldId: function () { return input.tokenElement.prop("id"); }, getInputField: function () { return input.element; }, getTokenfieldInputField: function () { return input.tokenElement; }, /** * Checks whether the tokenfield contains any token. * * @return true if the tokenfield contains at least one token. */ hasTokens: function () { return input.hasTokens(); }, /** * Checks whether the tokenfield contains the given token. * * Tokens are equal if they have the same value-property. * * @param token the given token * @return true if the token field contains the given token */ hasToken: function (token) { return input.hasToken(token); }, updateTokenRemovalVisibility: function () { input.updateTokenRemovalVisibility(); }, hideTokenRemoval: function () { input.hideTokenRemoval(); }, /** * Cleares the token field of all entries. */ clearTokens: function () { input.clearTokens(); }, /** * Removes the token from the tokenfield. * * Tokens are equal if they have the same value-property. * * @param token the token to remove */ removeToken: function (token) { input.removeToken(token); }, /** * Get all tokens in the tokenfield. * * @return {*} a list of all tokens in the tokenfield. */ getTokens: function () { return input.getTokens(); }, resize: function () { input.resize(); }, resizeInputField: function () { input.resizeInputField(); } }; }; sirius.tokenfield = sirius.createTokenfield(); × Sind Sie sicher?
  • [H3] Warenkorb
  • [H4] placeholder
  • [H4] Shop-Login
  • [H6]  

Bilder

Es konnten 84 Bilder auf dieser Webseite gefunden werden.

Bei 16 Bilder(n) fehlt ein ALT-Attribut. Fügen Sie ALT-Attribute zu Ihren Bildern, um die Bedeutung der Bilder für Suchmaschinen zugänglich zu machen.

Text/HTML Verhältnis

Anteil : 2%

Das Text zu HTML Code Verhältnis dieser Webseite ist niedriger als 15 Prozent, was bedeutet, dass Sie mehr Inhalte für Ihre Webseite schreiben sollten.

Flash

Perfekt, denn es wurde kein Flash auf Ihrer Webseite gefunden.

IFrame

Großartig, denn Sie verwenden keine IFrames auf Ihrer Webseite.

URL Rewrite

Gut. Ihre Links sind für Suchmaschinen gut lesbar (sprechende Links)!

Underscores in the URLs

Perfekt! Wir haben keine Unterstriche in Ihren Links entdeckt.

In-page links

We found a total of 70 links including 1 link(s) to files

Anker Typ Natürlich
- intern natürliche Links
Suchen intern natürliche Links
Warenkorb intern natürliche Links
Zerspanung intern natürliche Links
Spannen intern natürliche Links
Messen intern natürliche Links
Handwerkzeuge intern natürliche Links
Trennen / Bohren / Schleifen / Sägen intern natürliche Links
Elektro-/ Druckluftwerkzeuge / Motoristik intern natürliche Links
Arbeitsschutz intern natürliche Links
Löten, Schweißen intern natürliche Links
Werkstattbedarf intern natürliche Links
Betriebseinrichtung intern natürliche Links
Verbindungstechnik intern natürliche Links
Bürobedarf intern natürliche Links
Markenshops intern natürliche Links
Marken intern natürliche Links
Aktionen intern natürliche Links
Kataloge intern natürliche Links
Service-Katalog extern natürliche Links
Service-Regal intern natürliche Links
Versandkosten intern natürliche Links
Ansprechpartner intern natürliche Links
Schulungen intern natürliche Links
Karriere intern natürliche Links
Blog extern natürliche Links
Firmengeschichte intern natürliche Links
Facebook extern natürliche Links
Instagram extern natürliche Links
Zerspanung intern natürliche Links
Spannen intern natürliche Links
Messen intern natürliche Links
Handwerkzeuge intern natürliche Links
Trennen / Bohren / Schleifen / Sägen intern natürliche Links
Elektro-/ Druckluft-Werkzeuge / Motoristik intern natürliche Links
Arbeitsschutz intern natürliche Links
Löten, Schweißen intern natürliche Links
Werkstattbedarf intern natürliche Links
Betriebseinrichtung intern natürliche Links
Verbindungstechnik intern natürliche Links
Zerspanung intern natürliche Links
Spannen intern natürliche Links
Messen intern natürliche Links
Handwerkzeuge intern natürliche Links
Trennen / Bohren / Schleifen / S&aumlgen intern natürliche Links
Elektro-/ Druckluft-Werkzeuge / Motoristik intern natürliche Links
Arbeitsschutz intern natürliche Links
L&oumlten, Schweißen intern natürliche Links
Werkstattbedarf intern natürliche Links
Betriebseinrichtung intern natürliche Links
Verbindungstechnik intern natürliche Links
Bürobedarf intern natürliche Links
DIN und Norm-Teile intern natürliche Links
Dübeltechnik intern natürliche Links
Rohrbefestigung/ Montagesysteme intern natürliche Links
Nägel und Klammern intern natürliche Links
Blindniettechnik intern natürliche Links
Produkte intern natürliche Links
plus6 intern natürliche Links
CETATOP intern natürliche Links
Wir über uns intern natürliche Links
Service intern natürliche Links
Kontakt intern natürliche Links
Anfahrt intern natürliche Links
Impressum intern natürliche Links
AGB intern natürliche Links
Datenschutz intern natürliche Links
Mobil-Version intern natürliche Links
SellSite extern natürliche Links
' + actionLabel + ' intern natürliche Links

SEO Suchbegriffe

Suchbegriffswolke

service-regal öffnungszeiten abbrechen service ansprechpartner oder aktionen und zurücksetzen passwort

Keywords Consistency

Suchbegriff Inhalt Seitentitel Suchbegriffe Seitenbeschreibung Überschriften
passwort 7
zurücksetzen 4
abbrechen 3
oder 3
aktionen 3

Benutzerfreundlichkeit

URL

Domain : jeans-kassel.de

Länge : 15

Favoriten Icon

Gut. Die Webseite hat ein Favicon.

Druckeigenschaften

Gut. Es konnten druckfreundliche CSS-Angaben gefunden werden.

Sprache

Gut, denn Sie haben in den META-Elementen eine Sprache deklariert: de.

Dublin Core

Diese Webseite nutzt nicht die Vorteile der Dublin Core Elemente.

Dokument

Doctype

HTML 5

Verschlüsselung

In den META-Elementen wird nicht der Zeichensatz deklariert. Benutzen Sie dieses kostenlose Werkzeug um den Zeichensatz zu deklarieren und ein entsprechendes META-Element zu erzeugen.

W3C Validität

Fehler : 0

Warnungen : 0

E-Mail Datenschutz

Achtung! Es wurde mindestens eine E-Mail Adresse im Klartext auf Ihrer Webseite gefunden. Benutzen Sie dieses kostenlose Werkzeug um E-Mail Adressen vor SPAM zu schützen.

Veraltetes HTML

Veraltete Tags Vorkommen
<tt> 3

Überholte (deprecated) HTML Tags sind HTML Tags, die zwar aktuell funktionieren, aber bald nicht mehr von jedem Browser unterstützt werden. Wir empfehlen Ihnen diese überholten HTML Tags durch aktuelle HTML Tags zu ersetzen.

Tipps zur Webseitengeschwindigkeit

Sehr gut, denn Ihre Webseite benutzt keine verschachtelten Tabellen.
Schlecht, denn es wurden CSS-Angaben in HTML-Elementen entdeckt. Diese Angaben sollten in ein entsprechendes CSS-Stylesheet verlagert werden.
Gut, denn Ihre Webseite enthält nur wenig CSS-Dateien.
Nicht so gut, denn Ihre Webseite enthält viele Javascript-Dateien (mehr als 6).
Gut! Sie nutzen die Vorteile von gzip.

Mobile

Mobile Optimierung

Apple Icon
META Viewport Tag
Flash Inhalt

Optimierung

XML-Sitemap

Fehlt

Ihre Webseite hat keine XML-Sitemap. Dies könnte Probleme machen.

Eine Sitemap listet alle URLs, die für einen Suchmaschinenzugriff verfügbar sind. Sie kann ebenfalls Angaben zu aktuellen Updates, Häufigkeit von Änderungen und zur Priorität der URLs enthalten. Dies erlaubt Suchmaschinen, Seiten effizienter auszuloten.

Robots.txt

http://jeans-kassel.de/robots.txt

Sehr gut! Ihre Webseite enthält eine robots.txt-Datei.

Analytics

Sehr gut, Ihre Website hat ein Analyse-Tool.

   Google Analytics

PageSpeed Insights


Gerät
Kategorien

Website-Überprüfung

Website-Überprüfung ist ein kostenloses SEO Werkzeug zur Analyse Ihrer Webseite