Finger Elf

$19.99 $49.99 Save 60%
Color:  GOLD
Quantity
Share the love
Description

Your feet pound the path. Your breathing is deep but steady. As you lengthen your stride the trees along the path become a blur. Then, a hundred yards ahead of you, you spot the blockade—three people walking abreast and chatting cheerfully. They probably don’t even realize they’re blocking your path. You clear your throat, but the pedestrians are engaged in conversation and do not hear you. What do you do? It feels rude to shout, and even ruder to barrel your way between them. Finger Elf lets you communicate your presence in a polite way. The clear ring of the bell cuts through traffic and conversation noise to get the attention of others who share the trail or sidewalk.

  • JUST RUN WITH IT - Finger Elf works. Try it and see. Walkers often complain that runners overtake them in surprise. Give a warning before you pass and make your run easier.
  • MUSICAL - A high-quality brass dome produces a loud, powerful, musical ring. You'll love the ring so much, you'll ring it more than you need it!
  • LIGHTWEIGHT – Weighing only 1 ounce, Finger Elf is small, stylish, and lightweight. Running with a Finger Elf has never been easier. You'll barely notice your new running gear
  • ADJUSTABLE - Slightly oversized with two pairs of silicone inserts, adjust to fit YOUR fingers. Cold outside, then wears gloves because Finger Elf is oversized for the average fingers.
  • QUALITY GIFT - Finger Elf comes in beautiful packaging and makes a very unique gift for the runner who has everything. Plus Finger Elf is proudly made in Japan. Enjoy quality craftsmanship from the land of the rising sun.

Specifications:

  • Material: copper&zinc alloys
  • Size: 4.5*6cm
  • Colour: gold, silver, rose gold

Package Include:

  • 1 x Finger Elf

Note:

  • Due to the different monitor and light effect, the actual colour of the item might be slightly different from the colour showed on the pictures.

Shipping:

  • Free Shipping Worldwide.
  • We process orders between Monday and Friday. Orders will be processed within 15 business days of ordering and shipped out the next day after the processing day. We don't ship on weekends.
Customer Reviews

Here are what our customers say.

Write a Review
Customer Reviews
Wow you reached the bottom
Newest
Most liked
Highest ratings
Lowest ratings
×
class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
The review would not show in product details on storefront since it does not support to.