混合使用Javascript和jQuery
Mixing Javascript and jQuery?
主要问题:是否可以使用JavaScript条件,然后使用一些jQuery代码?
下面是一个目前不起作用的例子:
<script>
//<![CDATA[
if (location.pathname == "/SearchResults.asp"
|| location.pathname.indexOf("-s/") != -1
|| location.pathname.indexOf("_s/") != -1)
$('.colors_productname span').css("background-color", "#F7F7F7");
//]]>
</script>
JavaScript条件是由我的电子商务平台(Volusion)提供的,只针对类别页面(jQuery是我做的)。我问他们,考虑到我的URL不包括"/SearchResults.asp"(其中一个实际上是"/Meats-s/3393.htm"),这个JavaScript代码是否仍然有效,但他们向我保证它应该仍然有效。
次要问题:"location.pathname.indexOf"行做什么?
虽然可以混合使用,但重要的是要理解jQuery和原生Javascript对DOM元素的引用不同。
假设您有一个包含以下元素的文档:
<span id="message_location"><span>
要在常规Javascript中获得该元素,请执行以下操作:
var spanElement = document.getElementById("message_location");
然而,对于jQuery库,您将使用以下语法:
var $spanElement = $("#message_location");
在这里,您必须注意spanElement
和$spanElement
不是同一回事。一个是DOM元素,另一个是数组cum-jQuery对象,它包含一个值——span元素。
当从jQuery库和常规Javascript来回切换时,很容易混淆你真正指的是什么
(就我个人而言,每当我有一个对DOM元素的jQuery引用时,我总是以$
开头变量名。这让我的生活变得简单…)
问题2:location.pathname
是您的域名后面的url的路径。
例如http://www.google.com/s/goo.html->路径名将返回s/goo.html
所以你的if条件是试图找出这个字符串是否包含子字符串"-s"。
您完全可以将它们混合在一起。
location.pathname.indexOf正在当前URL中搜索"_s/"或"-s/"的实例。如果URL不包含这些字符(或者等于"/SearchResults.asp"),则运行jquery代码。
您应该能够自由地混合这两者,注意使用JQuery选择器与常规Javascript dom元素,尽管两者并不总是相同的。(即类,多个选择器。)
- jQuery/Javascript.toggleClass/.classList.toggle的特殊行为
- 学生搜索项目jquery/javascript
- jQuery/JavaScript在线公文包表单-打印样式表
- 如何在页面加载中使用Jquery/Javascript确定img源
- DataTables合并了两个独立表中的jQuery/Javascript函数
- 在 Jquery/Javascript 中使用多个 OR (||) 运算符时如何设置变量
- 如何在jquery+javascript中只在输入框中输入数字(使用regex)
- 在Jquery/Javascript中的Array中插入Textbox值
- 使用Jquery/Javascript替换CSS属性
- Jquery/Javascript:通过按下按钮显示数组中的随机图像
- 选中复选框的Jquery/Javascript问题使用输入框操作将行从一个表添加到另一个表
- 在for循环中未获取JQuery/JavaScript对象值
- 使用jQuery/Javascript在Facebook上发送消息
- jQuery/Javascript foreach If/Else |如果为空(不执行任何操作)Else(显示forea
- 使用jQuery+Javascript识别一个空文本节点
- jquery/javascript字符串中的撇号
- jQuery/Javascript在内容可编辑的当前段落后插入元素
- 在页面加载时激活jQuery/Javascript函数
- 如何创建php函数或任何脚本/jquery Javascript,使我能够获取与复选框关联的值并添加它们
- Jquery/Javascript使用IF/ELSE语句更改img SRC