আনকড টাইপ এরির: অপরিজ্ঞাত করা jquery-min.js লোড করার জন্য কোনও ফাংশন নয়


104

আমি একটি সাধারণ ওয়েবপৃষ্ঠা তৈরি করছি যার জন্য আমার প্রায় পাঁচটি সিএসএস ফাইল এবং দশটি জাভাস্ক্রিপ্ট ফাইল লোড করা প্রয়োজন।

  • এইচটিএমএল পৃষ্ঠায় এগুলি পৃথকভাবে লোড করার সময়, আমার ওয়েবপৃষ্ঠাটি সূক্ষ্মভাবে লোড হয়।
  • এখন উত্পাদনের জন্য, আমি সমস্ত জাভাস্ক্রিপ্টকে একটি একক ফাইলে, প্রয়োজনীয় ক্রমে এবং সমস্ত সিএসএসকে অন্য একটি ফাইলে সংযুক্ত করেছিলাম। তবে আমি যখন ওয়েব পৃষ্ঠাটি সংক্ষেপিত ফাইলগুলি দিয়ে চালানোর চেষ্টা করি তখন এটি একটি ত্রুটি বলে:

    Uncaught TypeError: undefined is not a function

যে লাইনে jquery.min.js সংক্ষিপ্ত জাভাস্ক্রিপ্ট ফাইলটিতে লোড করা হচ্ছে।

এটি প্রশমিত করতে আমি কী করতে পারি? আমি সমস্ত ফাইল একত্রিত করতে এবং উত্পাদন জন্য তাদের খাটো করতে চাই। সাহায্য করুন.


সম্পাদনা: আমি যখন জাভাস্ক্রিপ্ট এবং সিএসএসের সাথে ছিল তখন সেগুলি ক্রমে একত্রীকরণ করা হয়েছিল যখন তারা পৃথকভাবে লোড হচ্ছে এবং জরিমানা কাজ করছে।


5
আপনার undefinedযদি দেখানোর মতো কোনও কোড না পাওয়া যায় তবে আমরা কীভাবে জানতে পারি ?
জোসেফ

অপরিজ্ঞাপিতটি আসছে jquery-1.6.1.min.js যে ইম লোড হচ্ছে। সম্ভবত jquery সঠিকভাবে বোঝা হচ্ছে না বা কিছু?
ঘোস্টকডার

উচ্চ র‌্যাঙ্কিং উত্তর গ্রহণ করবেন হয়তো?
অ্যালিসোন

উত্তর:


179

এই সমস্যাটি এখনও সমাধান করা যায় নি বলে ধরে নেওয়া, অনেকগুলি পৃথক ফাইল সেমিকোলনের সাহায্যে তাদের কোড শেষ করে না। বেশিরভাগ jQuery স্ক্রিপ্টগুলি শেষ হয় (jQuery)এবং আপনার থাকা দরকার (jQuery);

পৃথক ফাইল হিসাবে স্ক্রিপ্টটি ঠিকঠাকভাবে লোড হবে তবে পৃথক ফাইল হিসাবে আপনাকে সেমিকোলনগুলির প্রয়োজন।


18
+1 টি। জাভাস্ক্রিপ্ট কোডটি যুক্ত করার সময় আপনার সর্বদা সেমিকোলনে তাদের যোগদান করা উচিত। এগুলির মধ্যে অনেকগুলি এখনও বৈধ, তবে ত্রুটিগুলির দিকে কম নেতৃত্বে।
বার্গি

9
এটি ডিবাগ করা অবিশ্বাস্যভাবে জটিল। সত্যিই কার্যকর উত্তরের জন্য ধন্যবাদ!
gayyes

5
স্পষ্টতই বুটস্ট্র্যাপের জেএস এর একটি উদাহরণ। এর জন্য ধন্যবাদ! এটি ছিল সত্যিকারের নুডল স্ক্র্যাচার।
কেভিন বিয়াল

আমি ইউটিউব আইফ্রেমে এপিআই আমদানি করার চেষ্টা করছি, এবং এটি কোনও অর্ধপরিমাণে শেষ হয় না এবং আমি এই ত্রুটিটি পাচ্ছি। আমি এটিকে কোনও কিছুর সাথে জড়িত করছি না ... আমি এটিকে jQuery.getScript () দিয়ে লোড করছি। সুতরাং ... এটি কি আমার ত্রুটির কারণ হতে পারে? নাকি তা বোঝা যায় না?
ড্যানিয়েল

1
লাইব্রেরির সাথে কাজ করার সময় আমরা যদি এই ত্রুটিটি দেখি তবে কীভাবে সমাধান করব? আমি ২.৩.২ / জেএস / বুটস্ট্র্যাপ.মিন.জেস এবং / ১.৪..6/bootstrap-edable/js/bootstrap-edable.min.js
কোডওজারবার

28

আপনি যে ক্রমে ফাইলগুলি মার্জ করছেন তা আপনাকে আবার পরীক্ষা করতে হবে, এটি এমন কিছু হওয়া উচিত:

  1. jquery.min.js
  2. jQuery-ui.js
  3. কোনও তৃতীয় পক্ষের প্লাগইন আপনার লোড হচ্ছে
  4. আপনার কাস্টম জেএস

এটি কেবল json2.js, jquery-1.6.1.min.js, jquery প্লাগইনগুলি, আমার কোডের মতো। এটি এই ক্রমে।
ঘোস্টকোডার

যদি json2.js কোনও jquery ফাংশন ব্যবহার করে থাকে তবে jquery.min.js প্রথমে হওয়া উচিত। আমি সুপারিশ করবে. jquery.min.js, jqueryPlugins, json2.js, আমার কোড।
বিলাল মুর্তজা

18

এই সমাধানটি আমার পক্ষে কাজ করেছিল

    ; (ফাংশন ($) {
        // তোমার গোপন সংকেত
    }) (JQuery এর);

আপনার কোডটি বন্ধের ভিতরে নিয়ে যান এবং jQuery এর পরিবর্তে use ব্যবহার করুন

আমি উপরের সমাধানটি /magento/33348/uncaught-typeerror-undefined-is-not-a-function-when- using- a- jquery- plugin- in- ma এ পেয়েছি

অত্যধিক seraching পরে


16

JQuery এর বিভিন্ন সংস্করণে দুটি উল্লেখ থাকা থেকে আমি একই ত্রুটি পেয়েছি।

আমার মাস্টার পৃষ্ঠাতে:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>

এবং পৃষ্ঠায়:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"> </script>

7

স্কুইশিট ব্যবহার করে, জেএস ত্রুটি পেয়ে jQuery বৈধকরণ প্লাগ-ইন নিয়ে সম্প্রতি আমার এই সমস্যা হয়েছিল :

"অপরিবর্তিত একটি ফাংশন নয়"

আমি jquery.uthorate.min.js এর পরিবর্তে আনমিনিফাইড jquery.uthorate.js ফাইলের রেফারেন্স পরিবর্তন করে এটি ঠিক করেছি ।

@MvcHtmlString.Create(
    @SquishIt.Framework.Bundle.JavaScript()
        .Add("~/Scripts/Libraries/jquery-1.8.2.min.js")
        .Add("~/Scripts/Libraries/jquery-ui-1.9.1.custom.min.js")
        .Add("~/Scripts/Libraries/jquery.unobtrusive-ajax.min.js")
        .Add("~/Scripts/Libraries/jquery.validate.js")
        .Add("~/Scripts/Libraries/jquery.validate.unobtrusive.js")
         ... more files

আমি মনে করি যে নির্দিষ্ট ফাইলগুলির সংক্ষিপ্ত সংস্করণ, যখন স্কোয়াশিট ব্যবহার করে আরও সংকুচিত করা হয়েছে, উদাহরণস্বরূপ, কিছু ক্ষেত্রে নিখোঁজ অর্ধ-কলোন এবং এর মতো ডিল না করা যেমন @ ডাস্টিনের পরামর্শ অনুসারে, আপনাকে কোন ফাইলগুলির সাথে পরীক্ষা করতে হতে পারে দ্বিগুণ সংকোচনের সাথে, এবং যা আপনি কেবল স্কুইশিট বা যা কিছু বান্ডিল করছেন তা ছেড়ে যান।


অবিহীন সংস্করণ ব্যবহার করা আমার জন্য কেবল টিকিট ছিল - ধন্যবাদ।
পল দ্বীন

আমার জন্য এটি নুগেট প্যাকেজের 1.0.2 সংস্করণ থেকে json2.min.js ফাইল ছিল যা সমস্যা তৈরি করছে। আমি এটিকে নন-মিনিট ফাইলটিতে স্যুইচ করেছি এবং স্কুইশিট সম্মিলিত ফাইলটি এখন ঠিকঠাক কাজ করে।
বিলোরয়েড

6

এখনও যারা এই সমস্যাটি ঠিক করতে পারেননি তাদের জন্য, আমি jQuery ব্যবহার করার সময় আমার 'এই'টিকে' $ (এটি) 'এ পরিবর্তন করেছিলাম।

উদাহরণ:

$('.icon').click(function() {
    this.fadeOut();
});

ফিক্সড:

$('.icon').click(function() {
    $(this).fadeOut();
});

5

আমি খুব একই ইস্যুতে চলে এসেছি, যখন ভুলভাবে ভেরিয়েবলটির নাম হিসাবে একই নামটি ফাংশন হিসাবে রেখেছি।

আমার স্নাতকের:

isLive = isLive(data);

ব্যর্থ হয়েছে, ওপির উল্লিখিত ত্রুটি বার্তা উত্পন্ন করছে।

উপরের লাইনটি এতে পরিবর্তন করার মতোই ঠিক হয়ে গেল:

isItALive = isLive(data);

আমি জানি না, এই পরিস্থিতিতে এটি কতটা সহায়তা করে, তবে আমি এই উত্তরটি অনুরূপ সমস্যার সমাধানের জন্য অন্যদের জন্য রাখার সিদ্ধান্ত নিয়েছি।


5

হ্যাঁ, আমি এটিকে জেএস লাইব্রেরিতে অবিবাহিতগুলিতে পরিবর্তন করে ফিক্সও করেছি।

উদাহরণস্বরূপ, ট্যাগে, পরিবর্তন করুন:

<script type="text/javascript" src="js/jquery.ui.core.min.js"></script>
<script type="text/javascript" src="js/jquery.ui.widget.min.js"></script>
<script type="text/javascript" src="js/jquery.ui.rcarousel.min.js"></script>

এর জন্য:

<script type="text/javascript" src="js/jquery.ui.core.js"></script>
<script type="text/javascript" src="js/jquery.ui.widget.js"></script>
<script type="text/javascript" src="js/jquery.ui.rcarousel.js"></script>

'মিনিট' অবিহীন হিসাবে উদ্ধৃত করা হচ্ছে।

ধারণার জন্য ধন্যবাদ।


3

মনে রাখবেন: জাভাস্ক্রিপ্ট ফাংশনগুলি হ'ল সংবেদনশীল।

আমার একটি কেস হয়েছে যেখানে আমি নিশ্চিত যে আমার কোডটি সুচারুভাবে চলবে। তবে তবুও, একটি ত্রুটি পেয়েছে এবং আমি এটি কী তা যাচাই করতে গুগল ক্রোমের জাভাস্ক্রিপ্ট কনসোলটি পরীক্ষা করেছিলাম।

আমার ত্রুটি লাইন

opt.SetAttribute("value",values[a]);

এবং একই ত্রুটি বার্তা পেয়েছে:

Uncaught TypeError: undefined is not a function

উপরের কোডটিতে কিছুই ভুল মনে হচ্ছে তবে এটি চলছিল না। আমি প্রায় এক ঘন্টা সমস্যার সমাধান করি এবং তারপরে এটি আমার অন্যান্য চলমান কোডের সাথে তুলনা করি। আমার ত্রুটিটি এটি সেট করা হয়েছিল SetAttributeযা হওয়া উচিত setAttribute


2

আমার মতো যদি সেখানে কোনও মরন থাকে তবে আমার এই হতাশার সমস্যা ছিল কারণ আমি একটি সাধারণ কথা ভুলে গিয়েছিলাম

new

একটি নতুন অবজেক্ট ইনস্ট্যান্ট করার আগে কীওয়ার্ড।


1

আমার সবেমাত্র নিম্নলিখিত কোডের সাথে একই বার্তা ছিল (আইসডকফিস্ক্রিপ্টে):

f = (err,cb) ->
  cb null, true

await f defer err, res
console.log err if err  

এটি আমার কাছে নিয়মিত আইসিএস কোডের মতো মনে হয়েছিল। আমি নিয়মিত কফিস্ক্রিপ্টের জন্য অপেক্ষা-ডিফার্ট কনস্ট্রাক্টটি প্রকাশ করেছি:

f (err,res) ->
  console.log err if err

আসলেই হ্যাশেন্ডটি হ'ল যে আমি fদুটি প্যারামিটারের প্রত্যাশায় 1 কলব্যাক ফাংশন (2 পরামিতি সহ) পাস করার চেষ্টা করেছি , কার্যকরভাবে cbভিতরে না সেট করা f, যা সংকলকটি সঠিকভাবে রিপোর্ট করেছেundefined is not a function

ভুলটি হয়েছিল কারণ আমি অন্ধভাবে কলব্যাক-স্টাইলের বয়লারপ্লেট কোডটি পেস্ট করেছি। এটিতে fকোনও errপরামিতি প্রবেশ করার দরকার নেই , এটি সহজভাবে হওয়া উচিত:

f = (cb) ->
  cb null, true
f (err,res) ->
  console.log err if err

সাধারণ ক্ষেত্রে, আমি ফাংশন স্বাক্ষর এবং মিলের আরটিগুলির জন্য অনুরোধগুলি ডাবল-চেক করার পরামর্শ দেব। ত্রুটি বার্তায় কল-স্ট্যাকটি কার্যকর ইঙ্গিত সরবরাহ করতে সক্ষম হওয়া উচিত।

আপনার বিশেষ ক্ষেত্রে, আমি বিভিন্ন স্বাক্ষর সহ, বা বৈশ্বিক ভেরিয়েবলের ক্রিয়াকলাপগুলি ধারণ করে এমন অ্যাসাইনমেন্ট সহ, একত্রীকরণ ফাইলে দুবার উপস্থিত ফাংশন সংজ্ঞাগুলি অনুসন্ধান করার পরামর্শ দিচ্ছি।


1

আপনি কোন মন্তব্য মন্তব্য করেছেন তা নিশ্চিত করুন। কখনও কখনও অনুলিপি এবং আটকানোর সময় আপনি "/ *" ছাড়বেন!

এছাড়াও আপনি কনসোলে যাওয়ার পরে তারা আপনার ত্রুটিগুলি তালিকাভুক্ত করবে এবং আপনার একবারে এটি নেওয়া উচিত। আপনি যদি "আনকাচড সিনট্যাক্স এরর: অপ্রত্যাশিত টোকেন *" দেখেন তবে এর অর্থ হতে পারে এটি আপনার জেএস ফাইলটি পড়ছে এবং এটি প্রথম লাইনটি পেরিয়ে যাচ্ছে না।

/ *! * jquery.tools 1.1.2 - ওয়েবের জন্য অনুপস্থিত UI গ্রন্থাগার * সরঞ্জাম.এক্সপোজ -১.০.৫] * * কপিরাইট (সি) ২০০৯ টেরো পাইরাইনেন * http://flowplayer.org/tools/ * ফাইল উত্পন্ন: বুধ অক্টোবর 07 09:40:16 জিএমটি ২০০৯ * /


0

আমি ঘটনাক্রমে যখন জ্যাকারি ফাংশনে অনেকগুলি পরামিতিগুলি পাস করেছি যা কেবলমাত্র একটি কলব্যাক প্যারামিটার প্রত্যাশা করেছিল আমি তা পেয়েছি।

অন্যদের সমস্যা সমাধানের জন্য: অতিরিক্ত প্যারামিটারের জন্য আপনার সমস্ত jquery ফাংশন কলগুলি নিশ্চিত করে দেখুন make

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.