小编tas*_*enb的帖子

如何在Yii中禁用Ajax请求的jQuery自动加载?

我正在使用以下代码生成ajax请求:

echo CHtml::dropDownList('teamA', '', EnumController::getTeamOption(), array(
        'empty' => '(Team / Single)',
        'ajax' => array(
            'type'=>'POST',
            'url'=> $url,
            'update'=>"#resultA",
            //'data'=>"js:$('#teamA').hide().fadeIn()" 
        )
    )
);
Run Code Online (Sandbox Code Playgroud)

在我的主要布局中,我有以下内容:

<?php Yii::app()->clientScript->scriptMap=array('jquery.js'=>false);?>
<?php Yii::app()->clientScript->scriptMap=array('jquery.min.js'=>false);?>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.7/jquery-ui.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

Yii正在从资产中加载jQuery副本,然后是 - 另一个副本,直接来自Google.我只想使用Google副本并强制Yii不从资源加载自己的副本.我怎样才能做到这一点?

php jquery yii

9
推荐指数
2
解决办法
1万
查看次数

Three.js,自定义着色器和具有透明度的png纹理

我有一个非常简单的PNG纹理:一个带有透明背景的灰色圆圈.

PNG图像具有透明度

我使用它作为一个统一mapTHREE.ShaderMaterial:

var uniforms = THREE.UniformsUtils.merge( [basicShader.uniforms] );
uniforms['map'].value = THREE.ImageUtils.loadTexture( "img/particle.png" );
uniforms['size'].value = 100;
uniforms['opacity'].value = 0.5;
uniforms['psColor'].value = new THREE.Color( 0xffffff );
Run Code Online (Sandbox Code Playgroud)

这是我的片段着色器(只是其中的一部分):

gl_FragColor = vec4( psColor, vOpacity );
gl_FragColor = gl_FragColor * texture2D( map,vec2( gl_PointCoord.x, 1.0 - gl_PointCoord.y ) );
gl_FragColor = gl_FragColor * vec4( vColor, 1.0 );
Run Code Online (Sandbox Code Playgroud)

我将材料应用于某些粒子(THREE.PointCloud网格)并且效果很好:

颗粒纹理透明:好的!

但如果我将相机旋转超过180度,我会看到:

颗粒纹理没有透明度

我知道片段着色器没有正确考虑PNG纹理的alpha值.

在这种情况下,最好的方法是什么,以获得正确的颜色和不透明度(来自自定义属性)并仍然从PNG获得alpha权限?

为什么一方面表现正常?

shader png textures fragment-shader three.js

7
推荐指数
1
解决办法
2135
查看次数

如何使用Backbone.js部分更新(补丁:true)?

Model章节的save方法中,Backbone.js文档说:

相反,如果您只想将更改的属性发送到服务器,请调用model.save(attrs,{patch:true}).只有传入的属性,您将收到服务器的HTTP PATCH请求.

资料来源:http://backbonejs.org/#Model-save

我找不到这个实际工作方式的好解释(如果它确实有效!).它应该仅使用传入的属性向服务器发送PATCH请求,但它总是向服务器发送POST请求将模型的所有属性.使用Firebug,我在更改时看不到任何差异Backbone.emulateHTTP:Firebug始终使用save方法显示POST请求.

我在这里创建了一个测试:http://jsfiddle.net/r9kXL/ 注意,url当然不存在,但重要的是在Firebug中查看POST请求.如您所见,如果您尝试仅发送一个属性,它将始终将所有内容发送到服务器,使选项完全无用.

为什么Backbone开发人员提供这些选项以及它的用途是什么?你能举例说明它的使用吗?

javascript rest sync backbone.js http-patch

4
推荐指数
1
解决办法
5303
查看次数