Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
1/6
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
Reusable Copybook With Pen (writing will disappear)
1/6

Reusable Copybook With Pen (writing will disappear)

$39.99
$159.96
Save $119.97
BUNDLE & SAVE
Please select a bundle & save
Quantity
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);
Keep children interested in practicing writing and learn English effectively.

Keep children interested in practicing writing and learn English effectively

Three-dimensional groove design, standard writing format, thick and durable paper. It is designed to keep your kids engaged and happy. Besides, it is a good tool for early education. Build essential skills while having fun with preschool workbooks!

Kids will use their pencil to follow paths and draw different shapes to build their fine motor skills.

Children's magic practice copybook

About this item

  • ✍ All in English 4Pcs Magic Practice Copybook Set: If you want your children to learn English Calligraphy, Number, Drawing, Math, a reusable magic practice copybook set is a must-have.
  • ✍ Magical Reusable Function: The Writing Board Tracing Book will automatically fade and can be reused.
  • Handwriting automatically disappear after dry, great for repeatedly practice. If you want to learn calligraphy, this Magic Handwriting Book is a must have.
  • ✍ Standard English Writing Format: Our magic calligraphy book has a three-dimensional groove design and standard English writing format. The cute soft pen holder allows you to hold a comfortable pen for a long time. High-quality paper, strong and durable, comfortable.
  • ✍ Get Beautiful Handwriting: During these activities, kids will use their pencil to follow paths and draw different shapes, so they build their fine motor skills.That will engage their minds and boost their reading and writing comprehension skills, help children to practice different font of handwriting and build their own style.
  • ✍ Great Gift for Kids: Our Reusable Calligraphy Book is made of high-quality thick paper, with double-sided printing design and loose-leaf fixing method, easy to copy and not easy to fall off. Package include Alphabet - Number - Math - Drawing book and 6 Refill+1 pen + 1 gripper. This Magic Calligraphy Copybook Set is perfect gift for kids ages 3-7 years old.

undefined

Specifications

  • Material: hard cardboard
  • Product size: 26*18.5cm
  • Product weight: 300g
  • Package includes: 1 x Reusable Copybook With Pen / 1 x Reusable Copybook With Pen + 1 x Pen + 6 x Pen Refill + 1 x gripper

undefined

Notes

  • Due to manual measurements, please allow slight measurement deviations.
  • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed in the picture.