คำถามติดแท็ก javascript

JavaScript (JS) เป็นภาษาสคริปต์ฝั่งไคลเอ็นต์ซึ่งอนุญาตให้โต้ตอบกับผู้ใช้ควบคุมเบราว์เซอร์สื่อสารแบบอะซิงโครนัสและเปลี่ยนแปลงเนื้อหาของเอกสารที่แสดง โดยค่าเริ่มต้น Magento 1 มาพร้อมกับห้องสมุด prototype.js และ Magento 2 มาพร้อมกับ jQuery ใช้แท็ก 'prototype-js' และ 'jquery' สำหรับคำถามเกี่ยวกับไลบรารีเหล่านั้น

3
JS ข้อผิดพลาดวีโอไอพี 2
ฉันพยายามทำบางสิ่งบางอย่างจนเสร็จสิ้นและเผยแพร่ทางออนไลน์ในช่วงสุดสัปดาห์นี้ว่ามันพังทลายและฉันก็ไม่รู้ว่าทำไมฉันจึงหวังว่าจะมีคนช่วยฉันได้ ฉันได้ลองเพิ่ม jQuery ที่กำหนดเองลงในธีมที่กำหนดเองของฉันด้วยความสำเร็จเมื่อโหลด jQuery และฟังก์ชันใช้งานได้ แต่! มันทำงานไม่ถูกต้อง ตัวอย่างเช่น Safari จะไม่โหลด jQuery และฉันยังได้รับข้อผิดพลาดเหล่านี้ในคอนโซล: defaultCaptcha.js: 29 Uncaught TypeError: ไม่สามารถอ่านคุณสมบัติ 'captcha' ของการตรวจสอบสิทธิ์ที่ไม่ได้กำหนดป๊อปอัพ: 26 Uncaught TypeError: ไม่สามารถอ่านคุณสมบัติ 'เติมข้อความอัตโนมัติ' ของไม่ได้กำหนด (ฟังก์ชันที่ไม่ระบุชื่อ) ฉันคิดว่ามันมีบางอย่างที่เกี่ยวข้องกับวิธีการที่ฉันประกาศ jQuery ของฉัน แต่เมื่อไม่เป็นเช่นนั้นฉันก็ตัดสินใจลบ JS ที่กำหนดเองทั้งหมดของฉันและฉันก็ยังได้รับข้อผิดพลาดเหล่านี้ ดูเหมือนว่าจะมีบางสิ่งที่แตกสลายมากขึ้น 'ธีม' ที่กำหนดเองของฉันเป็นเพียงหน้า Landing Page ธรรมดาที่ไม่มีอะไรมากไปกว่ากล่องกำหนดเอง สิ่งที่อาจทำให้เกิดข้อผิดพลาดเหล่านี้ ??

5
วิธีการเรียก Owl Slider ใน Magento2
ถ้าเราต้องการเพิ่มOwl Sliderใน Magento 1.X เราก็ทำตามขั้นตอนด้านล่าง คัดลอกowl.carousel.min.jsและowl.carousel.jsและวางลงskin/frontend/pakage_name/theme_name/js คัดลอกowl.carousel.cssและวางลงในskin/frontend/pakage_name/theme_name/css ไปที่app/design/frontend/pakage_name/theme_name/layout/page.xmlแล้วเรียก js และ css และเราสามารถใช้ Owl Slider ได้ทุกที่ใน Magento 1.X site ดังนั้นใน Magento 2 เราจะเรียกแถบเลื่อนนกฮูกได้อย่างไรและควรจะโทรไปที่ใดก็ได้ในไซต์เพื่อให้ฉันสามารถใช้ได้ทุกเมื่อที่ต้องการ สำหรับปัญหาของฉันฉันได้อ้างอิงลิงค์นี้แต่มันไม่ได้ขึ้นกับเครื่องหมายและมันไม่ทำงาน ตอนนี้ฉันได้วางแถบเลื่อน js ของ Owl app/design/frontend/pakage_name/theme_name/Magento_Catalog/web/jsแต่มันไม่ทำงาน ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม

1
Admin config: แสดงฟิลด์ขึ้นอยู่กับค่าหลายค่าที่เลือก
ฉันต้องการแสดงฟิลด์ตามอินพุตแบบเลือกหลายรายการ ... รหัสต่อไปนี้ใช้งานได้หากเลือกเพียงหนึ่งค่า ถ้าฉันเลือกมากกว่าหนึ่งค่ามันจะแสดงเพียงหนึ่งฟิลด์ (เลือกครั้งแรกจากโมเดลต้นทาง) <enabled> <label>Enabled</label> ... <source_model>adminhtml/system_config_source_enabledisable</source_model> </enabled> <!-- this gives three options - shop, ebay, amazon --> <channels> ... <frontend_type>multiselect</frontend_type> <source_model>module/system_config_source_channels</source_model> <depends> <enabled>1</enabled> </depends> </channels> <mail_template_shop> ... <depends> <enabled>1</enabled> <channels>shop</channels> </depends> </mail_template_shop> <mail_template_ebay> ... <depends> <enabled>1</enabled> <channels>ebay</channels> </depends> </mail_template_ebay> รหัสที่เกี่ยวข้อง: app / รหัส / core / Mage …

2
วิดเจ็ต JS: วิดเจ็ตที่กำหนดเองสองตัวขยายพาเรนต์ Widget Magento 2 เดียวกัน
เงื่อนไข ฉันมี 2 วิดเจ็ตที่กำหนดเองที่ขยายวิดเจ็ตหลักเดียวกัน วิดเจ็ตหลัก: Magento_ConfigurableProduct/js/configurable วิดเจ็ตที่กำหนดเองครั้งแรก: Vendor_AModule/js/configurable วิดเจ็ตที่กำหนดเองที่สอง: Vendor_BModule/js/configurable วิดเจ็ตที่กำหนดเองครั้งแรกrequire-config.js: var config = { map: { '*': { configurable: 'Vendor_AModule/js/configurable' } } }; วิดเจ็ตที่กำหนดเองครั้งแรก JS: define([ 'jquery', 'mage/translate', 'Magento_ConfigurableProduct/js/configurable' ], function ($) { $.widget('vendor.configurable_awidget', $.mage.configurable, { /** * {@inheritDoc} */ _configureElement: function (element) { this._super(element); alert('Custom widget A is …

2
จะซ่อน Magento จากตัวตรวจจับ CMS ได้อย่างไร
ฉันมีร้านค้าวีโอไอพีและฉันต้องการซ่อนมันจากเครื่องตรวจจับ cms ฉันหมายความว่าฉันไม่ต้องการให้ใครรู้ว่าเว็บไซต์ของฉัน CMS และเว็บไซต์ของฉันสร้างขึ้นบน Magento มีบางเว็บไซต์http://guess.scritch.org/ที่กำลังตรวจจับ CMS อยู่และฉันต้องการซ่อนเว็บไซต์ CMS ของฉันจากการสังเกต มีบางวิธีในการซ่อนเว็บไซต์ WordPress CMS แต่ฉันไม่พบสิ่งใดสำหรับ Magento

2
Magento 2: วิธีการตรวจหาการเปลี่ยนแปลงขั้นตอนการชำระเงิน
ฉันกำลังพยายามหาวิธีที่ดีที่สุดในการตรวจสอบการเปลี่ยนแปลงขั้นตอนในการชำระเงินของ Magento 2 เช่นไปจากรายละเอียดการจัดส่งการชำระเงินหรือในทางกลับกัน ฉันได้ทำบางขุดและvendor/magento/module-checkout/view/frontend/web/js/model/step-navigator.jsฉันสามารถใช้next()ซึ่งไฟที่ปุ่มดำเนินการต่อและnavigateTo()ที่ทำงานเมื่อผู้ใช้คลิกที่ checkoutstep โดยตรง - แต่ทั้งสองวิธีดูเหมือนค่อนข้าง hacky จะต้องมีวิธีการทำความสะอาดในการตรวจสอบการเปลี่ยนแปลงขั้นตอนโดยไม่คำนึงถึงวิธีการ และขั้นตอนใด ฉันหวังว่าจะมีstepChange()ฟังก์ชั่นหรือสิ่งที่คล้ายกันที่จะเกิดไฟไหม้เมื่อมีการเปลี่ยนแปลงขั้นตอนการชำระเงินเกิดขึ้น คำถามของฉัน: วิธีที่ดีที่สุดในการทริกเกอร์ JS ที่กำหนดเองของฉันคืออะไรเมื่อมีการเปลี่ยนแปลงขั้นตอนการชำระเงิน

2
จะสร้างป็อปอัพ Magento 2 Modal ที่ไม่สามารถปิดได้อย่างไร
ฉันกำลังพยายามสร้างป๊อปอัปที่ไม่สามารถปิดได้ มีปุ่มที่จะนำคุณไปยังหน้าถัดไปโดยคลิกที่ปุ่มนี้ แต่ฉันไม่ต้องการให้ผู้ใช้ปิดได้ ป๊อปอัป modal สามารถปิดได้ 3 วิธี: คลิกปุ่มกากบาท / [X]ที่มุมบนขวา กดหลบหนี คลิกที่ภาพซ้อนทับ จนถึงตอนนี้เป็นคำกริยา JS ของฉันและฉันคิดว่าclickableOverlay: falseฉันได้จัดการกับสิ่งที่สามแล้ว: require( [ 'jquery', 'Magento_Ui/js/modal/modal' ], function($, modal) { $("#popup").modal({ autoOpen: true, responsive: true, clickableOverlay: false, modalClass: 'modal-custom', title: 'Popup', buttons: [{ text: $.mage.__('Take me back to the homepage'), class: 'action close-popup wide', click: …

4
ใช้ require-config.js เพื่อโหลดไฟล์ที่จำเป็นในทุกหน้า
ฉันรู้วิธีใช้require-config.jsในธีมที่กำหนดเอง แต่ฉันต้องการใช้ไฟล์จาวาสคริปต์ที่กำหนดเอง ( myfile.js) ในทุกหน้า ฉันควรเพิ่มไดเรกทอรีใดrequire-config.jsและจะใช้งานอย่างไรจึงจะทำงานได้ตามที่ควร กรุณาอย่าอ้างอิงถึงหน้าวีโอไอพีอย่างเป็นทางการ

1
จะเพิ่ม Block Specific JS (และ CSS) ได้อย่างไร - วิธี _right_
ดังนั้นฉันจึงใช้เวลาเป็นชั่วโมงในการค้นหาอ่านหนังสือเรียน ฯลฯ แต่ไม่มีใคร (ไม่ใช่แม้แต่อลันสตอร์ม!) สะกดคำนี้ให้ฉัน ดูเหมือนว่าอินเทอร์เน็ตทั้งหมดจะสนใจในการเพิ่มหรือ JS CSS เพื่อโดยเฉพาะอย่างยิ่งหน้าของวีโอไอพี 2 แต่สิ่งที่ฉันกำลังมองหาคือการเพิ่ม JS / CSS เพื่อเฉพาะบล็อก ดังนั้นนี่คือคำถามของฉันโดยย่อ: วิธีที่ดีที่สุดในการเพิ่ม JS (และ CSS เพิ่มเติม) ลงในบล็อกนั้นคืออะไรดังนั้นหากบล็อกนั้นปรากฏบนหน้า (*) โหลด JS / CSS หากบล็อกไม่มีอยู่นั้นจะไม่มี CSS / JS? ? * ซึ่งหมายความว่าสามารถตั้งค่าบล็อกใด ๆ บนเพจ / เทมเพลตผ่าน layout.xml บนเพจที่กำหนดเองจากโมดูลของฉันผ่านวิธี toHtml ของบล็อก / เพจหรือที่สำคัญที่สุดคือบล็อกที่ฝังอยู่ใน WYSIWYG ของหมวดหมู่ / คำอธิบายผลิตภัณฑ์ / CMS …

3
จะย่อ / ปรับ Javascript บน Magento 2 ได้อย่างไร?
ฉันพยายามมานานแล้วด้วยการลดขนาดจาวาสคริปต์บน magento 2 ตัวเลือกผู้ดูแลระบบสำหรับการลดขนาดไม่ทำงานดังนั้นฉันจึงหาวิธีอื่น ฉันได้ลองใช้สคริปต์อึกทำ แต่สิ่งนี้ทำให้เกิดปัญหากับต้อง js ที่ไฟล์บางอย่างไม่พร้อมในเวลาที่จะรวม มีใครพบวิธีแก้ปัญหาสำหรับการลดขนาดจาวาสคริปต์ใน magento 2 หรือไม่?

2
เขียนทับฟังก์ชัน js core magento 2
ฉันพยายามเขียนทับฟังก์ชั่นบางอย่างจากMagento_Swatches/js/SwatchRenderer.jsไฟล์ รหัสของฉันสำหรับrequirejs-config.js: var config = { config: { mixins: { 'Magento_Swatches/js/SwatchRenderer': { 'Magento_Swatches/js/SwatchRendererCategory1': true } } } }; และรหัสสำหรับไฟล์ SwatchRendererCategory1.js define(function () { 'use strict'; var mixin = { updateBaseImage: function (images, context, isProductViewExist) { var justAnImage = images[0]; if (isProductViewExist) { context .find('[data-gallery-role=gallery-placeholder]') .data('gallery') .updateData(images); } else if (justAnImage …


4
การเพิ่ม CSS และ JS ไปยัง <head> โดยใช้โมดูล layout.xml สำหรับบล็อก
สรุป ฉันต้องการเพิ่มบล็อกในมุมมองผลิตภัณฑ์ที่จัดกลุ่มและมุมมองผลิตภัณฑ์อย่างง่ายของฉัน บล็อกนี้จะมีคำแนะนำเครื่องมือที่ดีสำหรับสถานะการเลื่อนเมาส์ฉันใช้ไลบรารีขนาดเล็กที่มีปลั๊กอิน jquery หนึ่งชุดและสไตล์ชีท css อีกหนึ่งชุด ฉันต้องการรวมสองแหล่งข้อมูลไว้ในวีโอไอพีในหน้าเหล่านี้เท่านั้น หมายเหตุ ฉันใช้ธีมที่กำหนดเอง; แคชเป็นคนพิการ ; และ ไฟล์ของฉันอยู่ใน/jsไดเรกทอรี; ป่านนี้… อย่างไรก็ตามฉันรู้ว่าวิธีหนึ่งคือการใช้layout.xmlในโมดูลของฉันในตอนแรกมันใช้งานไม่ได้ดังนั้นฉันคิดว่าฉันอาจต้องการการกำหนดค่าเพิ่มเติมภายในconfig.xmlเพื่อบอก Magento เกี่ยวกับข้อกำหนดด้านโครงร่างของฉัน - นี่ก็ใช้งานไม่ได้เช่นกัน โดยไม่ได้ทำงานในสิ่งที่ผมหมายถึงคือสินทรัพย์ของฉันไม่ได้โหลด กรุณาหาแหล่งที่แนบมาด้านล่าง app / รหัส / ท้องถิ่น / ผู้ขาย / การจัดอันดับ / etc / layout.xml &lt;?xml version="1.0"?&gt; &lt;layout&gt; &lt;default&gt; &lt;reference name="head"&gt; &lt;action method="addJs"&gt; &lt;script&gt;vendor/qtip/jquery.qtip.min.js&lt;/script&gt; &lt;/action&gt; &lt;action method="addCss"&gt; &lt;stylesheet&gt;vendor/qtip/jquery.qtip.min.css&lt;/stylesheet&gt; &lt;/action&gt; &lt;/reference&gt; …

1
วิธีเข้าถึง Magento API จากไคลเอ็นต์ดั้งเดิมด้วย JavaScript
ฉันจำเป็นต้องเข้าถึง Magento API จากแอปพลิเคชันที่ใช้ JavaScript ในท้องถิ่น (Titanium Desktop) และสงสัยว่าจะทำอย่างไรดีที่สุด สิ่งที่ฉันพบ: กลไกการรับรองความถูกต้องเพียงอย่างเดียวคือ OAuth ดังนั้นผู้ใช้จะต้องป้อนข้อมูลประจำตัวของพวกเขาบนเว็บไซต์ มีห้องสมุดไคลเอนต์ JavaScript: https://code.google.com/p/oauth/source/browse/#svn%2Fcode%2Fjavascript สำหรับแอปดั้งเดิมที่เป็นไคลเอนต์OAuthแนะนำให้ใช้ OAuth 2 User Agent Flow URL การเปลี่ยนเส้นทางจะต้องชี้ไปที่หน้าเว็บท้องถิ่นซึ่งจะต้องแยกโทเค็นหรือคัดลอก &amp; วาง คำถาม: เป็นไปได้ไหมที่จะแลกเปลี่ยนกลไกการพิสูจน์ตัวตนกับการรับรองความถูกต้องที่อิง HMAC ด้วยแอปพลิเคชันและความลับ แม้จะมีวิธีการแก้ปัญหาที่พิสูจน์แล้ว? ถ้าไม่เป็นเช่นนั้น OAuth User Agent Flow นั้นสามารถใช้กับ Magento ได้หรือไม่? เอกสารไม่ได้กล่าวถึง เป็นไปได้ไหมที่จะส่งข้อมูลรับรองผู้ใช้กับ AJAX (Cross-Origin-Policy ไม่ใช่ปัญหาที่นี่) เพื่อซ่อนขั้นตอนการอนุญาตส่วนใหญ่จากผู้ใช้ โทเค็นการเข้าถึงสามารถถูกดึงโดยตรงจากการตอบสนอง
9 javascript  oauth  api 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.