1

我得到了这个脚本:

<script>
    $(document).ready(function () {
        $('a[@href^= ""] img').parent().click(function () {
            var linkz = $(this).attr("href");
            if(linkz.toLowerCase().indexOf("http: //www.website.com") >= 0) {
                window.open($(this).attr("href"));
                return false;
            } else {
                window.open("http://www.website.com/p/img.html?img=" + $(this).attr("href "));
                return false;
            }
        });
    });
</script>

在新页面中打开所有图像,并在新链接中传递图像 url。但我得到

TypeError: $ is not a function.

我试图添加 jQuery(document) 而不是 $(document) 但后来我得到了

$(&#39;a[@href^=&quot;&quot;] img&#39;)类型错误:$ 不是函数

这里。

4

4 回答 4

1

要么你没有包含 jQuery,要么你运行了 noConflict() 并且它释放了对 $.

http://api.jquery.com/jQuery.noConflict/

如果你使用 noConflict,你只需要在整个过程中使用 jQuery(),包括 jQuery('a[@href^=""] img')。

于 2013-03-28T02:01:25.720 回答
0

看起来您没有正确包含 jQuery,因为浏览器不知道是什么$。确保包含类似这样的内容<head>以包含 jQuery:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
于 2013-03-28T02:00:44.890 回答
0

你还没有添加jQuery添加这个<head></head>

  <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

如果您在本地进行测试,并且带宽较低,则将脚本下载一次** http://code.jquery.com/jquery-1.9.1.min.js **到您的文件夹并使用
<script src="jquery-1.9.1.min.js"></script>

于 2013-03-28T02:01:33.520 回答
0

尝试这个;

<script language="JavaScript" type="text/javascript" src="jquery/jquery.js"></script>
<script>
    jQuery.noConflict();
    (function ($) {
        function readyFn() {
            // Set your code here!!
        }

        $(document).ready(readyFn); 
    })(jQuery);

</script>

或者在你的情况下:

<script language="JavaScript" type="text/javascript" src="jquery/jquery.js"></script>
<script>
    jQuery.noConflict();
    (function ($) {
        function readyFn() {
             $('a[@href^= ""] img').parent().click(function () {
             var linkz = $(this).attr("href");
             if(linkz.toLowerCase().indexOf("http: //www.website.com") >= 0) {
                 window.open($(this).attr("href"));
                 return false;
             } else {
                 window.open("http://www.website.com/p/img.html?img=" + $(this).attr("href"));
                 return false;
             }
        });
        }

        $(document).ready(readyFn); 
    })(jQuery);

</script>
于 2014-03-24T17:51:20.993 回答